gpt4 book ai didi

javascript - 如何从外部文件 JSON 创建 JAVASCRIPT ARRAY

转载 作者:行者123 更新时间:2023-11-28 12:24:59 26 4
gpt4 key购买 nike

从 json 文件创建 JavaScript 数组的最佳方法是什么?我有四个空的 JavaScript 数组,我想用从 json 文件导入的数据填充它们。

var firstname = new Array();
var address= new Array();
var city = new Array();

文件 Json :“file.json”

[
{"name ": "John", "address": "350 Fifth Avenue", "city ": "New York"},
{"name ": "Mark", "address": "1101 Arch St", "city ": "Philadelphia"},
{"name ": "Jack", "address": "60th Street", "city ": "Chicago"}
]

我尝试:

$.getJSON('file.json',function (data) {   

for (var i = 0; i < data.length; i++) {
firstname.push.apply( firstname, data[i].firstname );
address.push.apply( address, data[i].address );
city.push.apply( city, data[i].city );
}

});

但是数组仍然是空的。提前致谢

==================================已解决============== =================

$.ajax({
async: false,
url: 'file.json',
data: "",
accepts:'application/json',
dataType: 'json',
success: function (data) {
for (var i = 0; i < data.length; i++) {
firstname.push( data[i].firstname );
address.push( data[i].address );
city.push( data[i].city );
}
}
})
// Get arrays outside callback function
console.log('result: '+firstname.length); // result: 3

最佳答案

您似乎顺序错误,data 是数组,所以不是

data.name[i]

但是

data[i].name

并删除奇怪的apply它将是

$.getJSON('json.js',function (data) {   
for (var i = 0; i < data.length; i++) {
name.push( data[i].name );
address.push( data[i].address );
city.push( data[i].city );
}
});

另请注意,对于全局上下文中的变量名称来说,name 是一个糟糕的选择。

关于javascript - 如何从外部文件 JSON 创建 JAVASCRIPT ARRAY,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30235473/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com