javascript或jquery中是否存在与PHP array_key_exists相等的项


is there an equalant to PHP array_key_exists in javascript or 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

对于PHP程序员来说,这是一个迁移到js的好网站。