Я подозреваю, что это простая проблема, но я немного новичок в js и не могу найти решение.
По сути, когда я передаю строку JSON в функцию, а затем пытаюсь выполнить итерацию по переданной переменной, она обрабатывает ее как буквальную строку, а не как массив.
С помощью этой функции:
function build_codes_long(codes) {
var codes_long_text = "";
for(var i =0;i < codes.length-1;i++) {
var code = codes[i];
codes_long_text += "<p>" + code['id'] + " = " + code['del'] + "</p>";
}
return codes_long_text;
}
Когда я передаю ей строку JSON, например:
[{"id":"1","del":"0","clip":"1"},{"id":"2","del":"0","clip":"1"}]
Она оценивает каждый символ в строке, а не каждый элемент в массиве. Таким образом, он повторяется 65 раз вместо 2, возвращая что-то вроде:
undefined = undefined
Я понимаю проблему с возвращаемыми значениями; это обработка массива как буквальной строки, которую я не понимаю. Спасибо!