如何从JavaScript中的json数组中获取数据?

时间:2012-10-16 12:11:04

标签: php javascript json

我有php函数,它将数组返回给JavaScript:


    $data['first'] = 10;
    $data['second'] = 20;
    echo json_enocde($data);

在JavaScript中,返回的值名为response。我需要显示值,并在阅读了json:

之后尝试这样做

        alert("First: " + response.first + " Second: " + response.second);

但是此代码仅在response.first和response.second的位置显示未定义的值。 如果我写警报(响应),那么我得到答案:


{"first":"10","second":"20"}

这意味着,JavaScript正在获取信息。 如何从json编码数组中单独获取值?

此致

3 个答案:

答案 0 :(得分:2)

使用JSON.parse()将JSON字符串转换为JavaScript对象。

答案 1 :(得分:0)

看起来您仍然拥有JSON字符串,而不是将其解析为JS对象。使用JSON.parse

var jsonString = '{"first":"10","second":"20"}'; // from whereever
var obj = JSON.parse(jsonString);
alert("First: " + response.first + " Second: " + response.second);
alert(obj); // should now be "[object Object]"

答案 2 :(得分:-2)

使用eval(不推荐)

var res = eval(response); //as you can see people are against it so I am editing the answer

使用     JSON.parse()来

如果你使用jquery

jQuery.parseJSON(response);