私はこれに 1 時間かかりましたが、助けが必要です。これは私を困惑させるようなものです。私のコードでのオブジェクトの明示的な設定を考えてみましょう:
ワーキングケース:
var terms={};
terms[0]={};
terms[1]={"label":"bag","cell_src":"images/bag.jpg","clue_type":"audio","clue_src":"/audio/bus.wav"};
terms[2]={"label":"crayon","cell_src":"images/crayon.jpg","clue_type":"audio","clue_src":"/audio/car.wav"};
terms[3]={"label":"pen","cell_src":"images/pen.jpg","clue_type":"audio","clue_src":"/audio/car.wav"};
terms[4]={"label":"pencil","cell_src":"images/pencil.jpg","clue_src":"/audio/boat.wav"};
terms[5]={"label":"pencil_case","cell_src":"images/pencil_case.jpg","clue_src":"/audio/train.wav"};
terms[6]={"label":"rubber","cell_src":"images/rubber.jpg","clue_src":"/audio/taxi.wav"};
terms[7]={"label":"ruler","cell_src":"images/ruler.jpg","clue_src":"/audio/plane.wav"};
terms[8]={"label":"sharpener","cell_src":"images/sharpener.jpg","clue_src":"/audio/taxi.wav"};
window.terms= terms;
window.terms= terms; // for using globaly
console.log(window.terms[1]); を実行すると 「かばん」を頂きました。それが私が欲しいものです。
動作しないケース
term{} の値を明示的に定義する代わりに、json ファイルからコンテンツを読み取り、次のように列挙された各インデックスに割り当てます。
var terms={};
terms[0]={};
$.getJSON('content.json', function(data){
$.each(data,function(i){
//terms[i]={"label":"bag","cell_src":"images/bag.jpg","clue_type":"audio","clue_src":"/audio/bus.wav"};
terms[i+1]={"label":data[i].headword,"cell_src":data[i].image,"clue_type":"audio","clue_src":data[i].audio};
});
window.terms=terms;
});
console.log(window.terms[1]); を実行すると 「Uncaught TypeError: 未定義のプロパティ '1' を読み取ることができません」というエラーが表示されるすべてのインデックスに同じ静的値。それは同じエラーを生成します。
これがどのようになるかについてのアイデアはありますか??