Javascript 如何用JSON中的信息填充数组?
基本上,我试图将JSON文件中的信息添加到数组中,但是信息返回为“未定义”,因为在数组中实际上没有创建任何内容。 以下是JSON文件的内容:Javascript 如何用JSON中的信息填充数组?,javascript,arrays,json,Javascript,Arrays,Json,基本上,我试图将JSON文件中的信息添加到数组中,但是信息返回为“未定义”,因为在数组中实际上没有创建任何内容。 以下是JSON文件的内容: "histogram": [ { "type": "Comedy", "count": 4 }, { "type": "Action", "count": 5 }, { "type": "
"histogram": [
{
"type": "Comedy",
"count": 4
},
{
"type": "Action",
"count": 5
},
{
"type": "Romance",
"count": 6
},
{
"type": "Drama",
"count": 1
},
{
"type": "SciFi",
"count": 4
}
]
}
到目前为止,我一直在使用的代码使用push()函数来添加信息,但是它似乎没有正确地添加信息。代码如下:
let movies;
function preload() {
movies = loadJSON('movies.json');
}
count = [];
var c0 = movies.histogram[0].count;
count.push(c0);
非常感谢您的帮助:)您需要调用
preload
,以便movies
中填充数据:
count = [];
preload();
但是,loadJSON
很可能是一个异步操作-因此,您需要像这样修改代码:
async function preload() {
let data = await loadJSON("movies.json");
movies = data;
}
count = [];
(async () => {
preload();
var c0 = movies.histogram[0].count;
count.push(c0);
})();
async
iLife只是正确调用异步函数的一种快速方法。您永远不会调用preload
函数。