我从AJAX调用中获取了JSON对象,并记录了如下结果:

console.log(response);

这是在控制台中记录的响应:
{"filename":"new.jpg","orientation":"vertical"}

但是,当我
console.log(response.orientation);

我得到一个未定义的响应。

我读过的大多数答案都表明返回了一个数组而不是一个对象,并且response [0] .orientation应该起作用,但是这里不是这种情况。当我将相同的数组分配给控制台中的另一个变量时:
var obj = {"filename":"new.jpg","orientation":"vertical"}

然后obj.orientation返回正确的值。

我正在用PHP创建JSON对象:
$response=array('filename' => $newfilename, 'orientation' => $orientation);
$response=json_encode($response);
echo $response;

这些属性显示未定义的原因很明显吗?

最佳答案

放:

header("Content-type: application/jason");

在PHP中,在JavaScript的AJAX调用中指定dataType: "json",或调用JSON.parse

关于php - JSON对象属性未定义,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12215736/

10-12 15:15
查看更多