我尝试打印这个
console.log(location_list.all_list[3]);
console.log(location_list.all_list);
但是" undefined" 1例。 什么不对?
更多代码:
var items = [];
$.getJSON( "js/location_list.json", function( data ) {
$.each( data, function( key, val ) {
items.push(key=val);
});
});
this.all_list = items;

结论: 此类作业不能用于" getJSON"
this.all_list = items;
答案 0 :(得分:0)
基于此代码:
var items = [];
$.getJSON( "js/location_list.json", function( data ) {
$.each( data, function( key, val ) {
items.push(key=val);
});
});
this.all_list = items;
因为异步
而看起来像 检索事件中的语句
$.each( data, function( key, val ) {
items.push(key=val);
});
在检索事件发生之前调用console.log(location_list.all_list[3]);
console.log(location_list.all_list); => []
console.log(location_list.all_list[3]); => 'undefined'
您需要检查all_list
if(location_list.all_list.length > 3) console.log(location_list.all_list[3]);