检查 JSON 响应数据是不是为空 [重复]
Posted
技术标签:
【中文标题】检查 JSON 响应数据是不是为空 [重复]【英文标题】:Check if JSON response data is empty [duplicate]检查 JSON 响应数据是否为空 [重复] 【发布时间】:2019-01-23 07:15:14 【问题描述】:在浏览器控制台中查看 JSON 响应为空时如下所示:
"data":,"status":200,"config":"method":"GET","transformRequest":[null],"transformResponse":[null],"jsonpCallbackParam":"callback","url":"http://url/form/BN217473","headers":"Accept":"application/json, text/plain, */*","statusText":"","xhrStatus":"complete"
在 Angular 脚本中,我正在检查响应是否为空,但由于从未执行逻辑块,因此检查未捕获空响应
if (response.data == '')
console.log("no data found");
如何检查我的回复是否为空?
【问题讨论】:
***.com/a/32108184/965834 ? 【参考方案1】:如果您想检查您的回复是否为空,请尝试:
if ( json.length == 0 )
console.log("NO DATA!")
但我建议您使用lodash 和他的isNil()
方法或isEmpty()
来检查您的对象是否为空、null 或未定义。
干杯
【讨论】:
【参考方案2】:您可以使用Object.keys(response.data).length === 0
检查键/属性的数量,或者使用JSON.stringify() == JSON.stringify(response.data)
效率较低
【讨论】:
【参考方案3】:试试下面的代码 sn-p:-
if(!Object.keys(response.data).length)
console.log("no data found");
如果您以空对象的形式获取数据,例如 data: ,那么您应该检查对象内是否有任何键。
【讨论】:
对我不起作用。内容为
,但检查失败。长度为 2。
好的,你必须使用对象而不是字符串。所以JSON.parse(someString)
是你的朋友。但是JSON.parse()
可能会失败...以上是关于检查 JSON 响应数据是不是为空 [重复]的主要内容,如果未能解决你的问题,请参考以下文章