0

JSON数组:

var json_array = [
                 { "A" : "1" }, 
                 { "B" : "2" }
                  ];

如何制作一个作用于数组每个元素的 JS 函数?喜欢..

$.each(json_array, function() { ...
4

3 回答 3

2

两个建议。

  1. JSON 只是文本。一旦您从代码中删除了外部花括号,您就有了一个实际的JavaScript数组。

  2. 不要为此使用 JQuery。普通的旧 JavaScriptforEach已经适用于常规数组,这就是我认为的你想要的。

附录

使用 JavaScript 的forEach

var a = [
    {"A": "1"},
    {"B": "2"}
];

a.forEach(function(x) {
    alert(JSON.stringify(x));
});

如果您有旧浏览器(IE <= 8),请将forEach调用替换为(由于 Asad 的建议):

for (var i = 0, n = a.length; i < n; i += 1) {
    // do something with the element object
}

jQueryeach用于 jQuery 对象。

​</p>

于 2012-10-20T21:32:48.663 回答
2

如果你不能使用 jQuery,那你为什么不直接循环数组呢?

for (i = 0; i < json_array.length; i++)
{
   var item = json_array[i]; // this is { "A": 1 }
   for (element in item)
   {
       // element is "A", item[element] is 1
   }
}
于 2012-10-20T21:35:16.420 回答
1

使用 jQueryeach

$.each(json_array, function( index, item) {
   alert( item.A};
})

数组中每个对象中的键通常与您的演示不同,因此这适用于:

var json_array = [
                 { "A" : "1" }, 
                 { "A" : "2" }
                  ];
于 2012-10-20T21:40:15.820 回答