如果存在数组元素,则使用Javascript速记方式将true / false赋值给变量

时间:2012-04-16 18:33:33

标签: javascript

我希望如果我的元素存在于关联数组中,我可以将true / false赋给变量。

我试过了 -

var finalDisExist = stepsArray['stepIDFinal'];   

- 当然这完全符合您的想法(将对象分配给变量。

但我很确定我之前已经看过一些接近这个的东西,有人可以告诉我我错过了什么吗?

谢谢! 托德

4 个答案:

答案 0 :(得分:6)

也许,最快最好的方式是stepsArray.hasOwnProperty('stepIDFinal')

NB:请勿使用'stepIDFinal' in stepsArray,因为这会检查整个原型链中的“hashmap”对象并检测toString等等......

答案 1 :(得分:2)

也许这个?

var finalDisExist = !!stepsArray['stepIDFinal'];

第一个否定将所有虚假的东西(如undefined0)变为真,第二个变为真实假 - 反之亦然。这意味着如果stepsArray['stepIDFinal']等于null0,则finalDisExist将为false ...

答案 2 :(得分:2)

如果我没弄错的话,你会想要使用stepsArray.hasOwnProperty("stepIDFinal")

答案 3 :(得分:1)

你的意思是

var finalDisExist = !!stepsArray['stepIDFinal'];

或者

var finalDisExist = "undefined" !== typeof stepsArray['stepIDFinal'];