javascript - VS object.key 中的“key”

标签 javascript object properties

两者之间有什么区别吗:

if('mykey' in obj){

}

if(obj.mykey){

}

最佳答案

假设你有

var obj = { mykey: false };

那么 obj 中的 'mykey' 将为 true,而 obj.mykey 将为 false。差别很大。

'mykey' in obj 表达式将检查对象是否具有属性。 obj.mykey 表达式将检索属性的值并使用它。

此外,如果对象 obj 没有 mykey 属性,则 'mykey' in obj 将导致 falseobj.mykey 导致 未定义

关于javascript - VS object.key 中的“key”,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40102208/

相关文章:

oop - 只写属性有实际应用吗?

javascript - 当返回表达式的最后一部分时

javascript - 如何对数组内不同的对象数组进行排序

javascript - 组件内部方法的调用由根来回答

python - 返回一个参数绑定(bind)的函数对象?

javascript - 在 vanilla javascript 中将对象列表打印为链接

Kotlin:乐趣与值(value)

XML 标记、属性及其定义

javascript - InnerHTML 更新不起作用

javascript - D3.js 如何旋转 Marimekko 图表