これは簡単な問題だと思いますが、私は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"}]
配列内の各項目ではなく、文字列内の各文字を評価します。したがって、2回ではなく65回ループし、次のようになります。
undefined = undefined
戻り値の問題を理解しています。配列を私が理解できないリテラル文字列のように扱うことです。ありがとう!