我正在编写一些Jquery,我的代码顺序并没有按照我想要的方式运行。具体来说,我正在进行JSON调用(getJSON),一旦我获得该文件,我想创建一个我稍后将使用的数组。
我的代码 -
jQuery(document).ready( function () {
console.log("first");
var things = [];
jQuery.getJSON("file.json", function(data) {
jQuery.each(data, function(key, value) {
jQuery.each(value, function(i, v) {
console.log("i = " + i + " v = " + v);
things.push(v);
});
});
console.log( "things(JSON) = " + things);
});
console.log( "things = " + things);
console.log("last");
});
我的JSON文件 -
{
"good": [
"icecream",
"perl",
"baskets"
],
"bad": [
"greenLantern",
"villians"
],
}
我期望这个执行顺序:getJSON,从JSON对象获取数据,添加到数组“东西”。
但相反,我看到了这一点:
第一
获取test2.json
事情(最后)=最后
i = 0 v =冰淇淋
i = 1 v = perl
i = 2 v = baskets
i = 0 v = greenLantern
i = 1 v = villians
东西(JSON)=冰淇淋,perl,篮子,greenLantern,villians
这个命令混乱不允许我用我想要的值创建我的数组。相反,我最终得到一个空数组。有人可以了解正在发生的事情吗?
谢谢。