为什么会有这样的符号??、!!、?.?
- 内容介绍
- 文章标签
- 相关推荐
本文共计284个文字,预计阅读时间需要2分钟。
1. ES11新特性(空值合并运算符) 当操作符左侧是null或undefined时,返回右侧操作数,否则返回左侧操作数。
2. 相当于变量转为布尔值(类似于Boolean(变量))+ 1 属于ES11新特性(空值合并运算符)
1.??属于ES11新特性(空值合并操作符),当操作符左侧是null或为undefined时,返回右侧操作数,负责返回左侧2.!!相当于变量转为布尔值(类似Boolean(变量))1.??
属于ES11新特性(空值合并操作符),当操作符左侧是null或为undefined时,返回右侧操作数,负责返回左侧
2.!!
相当于变量转为布尔值(类似Boolean(变量))
3.?.可选链
const adventurer = { name: 'Alice', cat: { name: 'Dinah' }};const dogName = adventurer.dog?.name;console.log(dogName);// expected output: undefinedconsole.log(adventurer.someNonExistentMethod?.());// expected output: undefined
节选自 可选链操作符
这样使用的话可以避免报错。只能影响当前标记下的,如果层度深的话需要多标记。
本文共计284个文字,预计阅读时间需要2分钟。
1. ES11新特性(空值合并运算符) 当操作符左侧是null或undefined时,返回右侧操作数,否则返回左侧操作数。
2. 相当于变量转为布尔值(类似于Boolean(变量))+ 1 属于ES11新特性(空值合并运算符)
1.??属于ES11新特性(空值合并操作符),当操作符左侧是null或为undefined时,返回右侧操作数,负责返回左侧2.!!相当于变量转为布尔值(类似Boolean(变量))1.??
属于ES11新特性(空值合并操作符),当操作符左侧是null或为undefined时,返回右侧操作数,负责返回左侧
2.!!
相当于变量转为布尔值(类似Boolean(变量))
3.?.可选链
const adventurer = { name: 'Alice', cat: { name: 'Dinah' }};const dogName = adventurer.dog?.name;console.log(dogName);// expected output: undefinedconsole.log(adventurer.someNonExistentMethod?.());// expected output: undefined
节选自 可选链操作符
这样使用的话可以避免报错。只能影响当前标记下的,如果层度深的话需要多标记。

