我正在处理一些返回的 JSON 数据。
有时 JSON 会返回一些我可以通过
var new_insert_id = data['internal']['new_insert_id'];
但有时这部分json数组数据根本不会返回,所以我需要跳过这个变量的设置。
因此,在尝试设置变量之前,我编写了一个简单的检查以确保此数据存在:
if(typeof data['internal']['new_insert_id'] != 'undefined')
{
// if data['internal']['new_insert_id'] is defined, then..
var new_insert_id = data['internal']['new_insert_id'];
}
但是当 JSON 返回并且没有 new_insert_id 时,我收到以下错误:
Uncaught TypeError: Cannot read property 'new_insert_id' of undefined
它指向的代码行是罪魁祸首是我的if语句行。
我错过了什么?我认为我的 if 语句会检查它是否存在,或者在使用数组时我需要做其他事情吗?