使用jQuery循环并获取JSON数组的键/值对

JSt*_*ark 58 javascript jquery json

我想循环一个JSON数组并显示键和值.

它应该是以下帖子的简化版本,但我似乎没有正确的语法:jQuery'each'循环与JSON数组

我还看到了使用jQuery在JSON中获取键/值对中键的名称?,但它似乎也是一个简单活动的代码.

这说明了我正在寻找的东西(但它不起作用):

var result = '{"FirstName":"John","LastName":"Doe","Email":"johndoe@johndoe.com","Phone":"123 dead drive"}';
$.each(result, function(k, v) {
             //display the key and value pair
            alert(k + ' is ' + v);
        });
Run Code Online (Sandbox Code Playgroud)

没有强制性的jQuery要求,但它是可用的.如果它减少了所需的代码,我也可以重构JSON.

Dar*_*rov 142

您有一个表示JSON序列化JavaScript对象的字符串.在能够遍历其属性之前,需要将其反序列化为JavaScript对象.否则,您将循环遍历此字符串的每个单独字符.

var resultJSON = '{"FirstName":"John","LastName":"Doe","Email":"johndoe@johndoe.com","Phone":"123 dead drive"}';
var result = $.parseJSON(resultJSON);
$.each(result, function(k, v) {
    //display the key and value pair
    alert(k + ' is ' + v);
});
Run Code Online (Sandbox Code Playgroud)

现场演示.


xda*_*azz 18

var obj = $.parseJSON(result);
for (var prop in obj) {
    alert(prop + " is " + obj[prop]);
}
Run Code Online (Sandbox Code Playgroud)


Osk*_*kar 6

如果是这样的一个数组,您可以直接获取值:

var resultJSON = '{"FirstName":"John","LastName":"Doe","Email":"johndoe@johndoe.com","Phone":"123 dead drive"}';
var result = $.parseJSON(resultJSON);
result['FirstName']; // return 'John'
result['LastName'];  // return ''Doe'
result['Email']; // return 'johndoe@johndoe.com'
result['Phone'];  // return '123'
Run Code Online (Sandbox Code Playgroud)


Smi*_*ith 6

以下内容适用于JSON返回的字符串.它也适用于关联数据数组.

for (var key in data)
     alert(key + ' is ' + data[key]);
Run Code Online (Sandbox Code Playgroud)