Null合并运算符Javascript

怎样以更好的方式做这件事.

this.state.updateItem?this.state.updateItem.unit:'Unit';

我试过过this.state.updateItem.unit || ‘Unit’,但它发现它会产生错误,因为this.state.updateItem为NULL然后它找不到unit的任何属性.

如何以更好的方式做到这一点?

现在你必须这样做:

(this.state.updateItem || {}).unit || 'Unit'

对于optional chaining的ES(JavaScript),有一个第一阶段提案,我们(最终希望)能够做到这样的事情:

this.state.updateItem?.unit || 'Unit'

如果你正在做babel,你现在可以使用它!:
  https://www.npmjs.com/package/babel-plugin-transform-optional-chaining

相关文章
相关标签/搜索