可选链
JavaScript语法
当我们不确定一个对象中是否存在某个对象是否是一个对象,可以取值的时候,可以在这个元素后面加上 ?. 来取值,这样就可以避免元素不是对象而报错
!!和??的区别
都是JavaScript的特性
!! : 相当于先对表达式取反再取反,这样就返回了表达式本身的真假值
?? : 空值合并操作符,是一个逻辑操作符,当操作符的左侧是null或者undefined时,返回其右侧操作数,否则返回左侧操作数(和逻辑或一样 || )
字面量类型
默认情况下const声明了一个字符串,那么这个变量就是一个字面量类型,可以用于:声明
字面量推理:
在一个对象后面使用 as const 将对象里的属性值都转化成const