js之链判断运算符

// 错误的写法
const  firstName = message.body.user.firstName;

// 正确的写法
const firstName = (message
  && message.body
  && message.body.user
  && message.body.user.firstName) || 'default';

ES6的写法如下:

a?.b
// 等同于
a == null ? undefined : a.b

a?.[x]
// 等同于
a == null ? undefined : a[x]

a?.b()
// 等同于
a == null ? undefined : a.b()

a?.()
// 等同于
a == null ? undefined : a()**

摘自:https://es6.ruanyifeng.com/#docs/object

posted @ 2020-07-10 11:08  公众号python学习开发  阅读(530)  评论(1编辑  收藏  举报