说boundEvents
是一个可能存在或可能不存在的数组。如果不存在,则以下代码将返回“ undefined”:
console.log(typeof boundEvents);
精细。那正是我想要的。现在说我要检查该理论数组是否存在可能存在或可能不存在的密钥。
console.log(typeof boundEvents['click']);
哦哦:
Uncaught TypeError: Cannot read property 'click' of undefined
足够公平,javascript。因此,在检查键之前,让我们检查一下数组是否存在:
if(typeof boundEvents != 'undefined'){
console.log(typeof boundEvents['click']);
}
可以再次工作,但是我想知道是否有一种方法可以消除
if
语句,而仅一步一步直接检查boundEvents['click']
是否存在?谢谢!
编辑:完整的答案,从下面合并:
var boundEvents = boundEvents || {};
console.log(boundEvents.hasOwnProperty('click'));
最佳答案
你可以做:
boundEvents = boundEvents || {};
console.log(boundEvents['click']);
或一行:
console.log((boundEvents || {})['click']);