【发布时间】:2020-10-17 13:44:08
【问题描述】:
我在代码中有一个 if 语句,它检查对象是否已定义,然后检查其属性之一的相等性。我的 if 语句是这样的:
if(obj && obj.a !== x) { // do something }
但现在我使用了可选链接并将我的 if 语句更改为:
if(obj?.a !== x) { // do something }
但现在我的代码在这种情况下无法正常工作。即使 obj 未定义,代码也会进入 if 语句。请有人解释一下为什么会这样?
【问题讨论】:
标签: javascript ecmascript-next optional-chaining