我有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编码数组中单独获取值?
此致
答案 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);