我有以下 JavaScript 代码:
alert(data.status);
data
是一个 JSON 对象,其字段之一是 status
(布尔字段)。
当
JSON.stringify(data)
返回时:
{"result":[{"income":"1000","expense":"2000"}],"errors":{},"status":true}
上面的代码确实输出了
true
,但是当JSON.stringify(data)
返回时:
{"result":null,"errors":{"user":"nonexistent user"},"status":false}
上面的代码中断了 - 即它不会发出任何警报,并且我的 JavaScript 代码的其余部分也没有执行。
知道为什么,和/或如何修复/绕过它吗?
您的错误在其他地方。在 Firebug(或其他控制台)中尝试这个简单的测试:
var data = JSON.parse(
'{"result":null,"errors":{"user":"nonexistent user"},"status":false}')
alert(data.status);
效果很好。
{"data":{},"status":{"isSuccess":false,"message":"处理您的请求时出错。","statusCode":"GNLERR"}}