0

使用本地数组,我可以将键与提交的值匹配,如下所示:

var myArray = {
        "orange": "black",
        "red": "brown"
    };

var myKey = $("input").val();
var myValue = myArray[myKey];
alert(myKey + " is the new " + myValue); // outputs "orange is the new black"

当外部存储相同的数组时,我该怎么做?不是:

var myArray = $.getJSON('/files/colors.json');

或者

$.getJSON('/files/colors.json', function(data){  
    var myValue = data[myKey];
    ...
}

$.parseJSON即使我的外部阵列格式正确,我也必须这样做吗?

4

1 回答 1

1

jQuery 1.4+ 将在检索错误的 JSON 数据时静默失败,因此请确保您的数据是严格的。

您的第二个示例在技术上应该有效。作为一个更好的例子,试试这个:

$.getJSON('/files/colors.json', function(data) {

  $.each(data, function(key, val) {

    console.log(key + ' : ' + val);

  });
});

你提Array了很多。值得一提的是,您的数据更好地描述为对象吗?

于 2013-08-05T18:34:07.027 回答