【发布时间】:2017-09-05 05:01:17
【问题描述】:
告诉我,如何正确地检查关联数组中键的存在?
例如:
var mydata = {
key1: '',
key2: {
subkey1: {
subkey1_1: {
value1: ''
value2" '',
},
},
subkey2: '';
},
}
if ((mydata.key2 != undefined) && (mydata.key2.subkey1 != undefined) && (mydata.key2.subkey1.subkey1_1 != undefined))
mydata.key2.subkey1.subkey1_1.value1 = 'test';
太长太混乱了
((mydata.key2 != undefined) && (mydata.key2.subkey1 != undefined) && (mydata.key2.subkey1.subkey1_1 != undefined))
我想用一个更简单的函数,比如
safeSet(mydata.key2.subkey1.subkey1_1.value1, 'test');
或
if (is_undefined(mydata.key2.subkey1.subkey1_1.value1) == true)
mydata.key2.subkey1.subkey1_1.value1 = 'test'; // now - error if 'mydata.key2.subkey1.subkey1_1' not exist
【问题讨论】:
-
associative arrays?你的意思是"object" -
您要检查键是否存在,或者键是否有值?你的问题是前者,你的代码暗示后者。无论哪种方式,听起来您都可以使用
try/catch块
标签: javascript jquery undefined associative-array exists