# es6+

# 可选链?.

  • a存在的话,才去读取arr,否则返回undefined
  • 不需要再去写obj&&obj.a&&obj.a.arr这种繁琐的形式了
let obj={
		// a:{
		// 	arr:[1,2,3]
		// }
	}
console.log(obj.a?.arr)

# ?? !!

  1. !!操作符:非最新操作符
  • 将一个其他类型转换成boolean类型;
  • 类似于Boolean(变量)的方式;
  1. ??操作符:合并空值运算符
  • 它是ES11增加的新特性;
  • 空值合并操作符(??)是一个逻辑操作符,当操作符的左侧是仅为 null 或者 undefined 时,返回其右侧操作数,否则返回左侧操作数;
console.log(0 ?? "xx") 			//0
console.log(null ?? "xx") 		//xx
console.log(undefined ?? "xx")  //xx
最后更新: 9/6/2022, 2:39:06 PM