可能重复:
检查 Javascript 中是否存在关联数组键
我有一个 PHP 代码块。出于某种目的,我将其转换为 JavaScript 块。
我有 PHP
if(array_key_exists($val['preferenceIDTmp'], $selected_pref_array[1]))
现在我想在 jQuery 中做到这一点。是否有任何内置功能可以做到这一点?
可能重复:
检查 Javascript 中是否存在关联数组键
我有一个 PHP 代码块。出于某种目的,我将其转换为 JavaScript 块。
我有 PHP
if(array_key_exists($val['preferenceIDTmp'], $selected_pref_array[1]))
现在我想在 jQuery 中做到这一点。是否有任何内置功能可以做到这一点?
请注意,对象(具有命名属性)和关联数组在 javascript 中是相同的。
您可以使用hasOwnProperty
检查对象是否包含给定属性:
o = new Object();
o.prop = 'exists'; // or o['prop'] = 'exists', this is equivalent
function changeO() {
o.newprop = o.prop;
delete o.prop;
}
o.hasOwnProperty('prop'); //returns true
changeO();
o.hasOwnProperty('prop'); //returns false
或者,您可以使用:
if (prop in object)
细微的区别在于后者检查原型链。
在 Javascript 中......
if(nameofarray['preferenceIDTmp'] != undefined) {
// It exists
} else {
// Does not exist
}
http://phpjs.org/functions/array_key_exists:323
对于迁移到 js 的 PHP 程序员来说,这是一个很棒的网站。