TypeScript 内置对象、ECMA新特性

2022-07-21  本文已影响0人  李霖弢

可选链操作符 ?.

当目标为undefinednull时,短路并返回undefined

obj?.prop
obj?.[expr]
arr?.[index]
func?.(args)

后续目标不会继续执行

let potentiallyNullObj = null;
let x = 0;
let prop = potentiallyNullObj?.[x++];

console.log(x); // x 将不会被递增,依旧输出 0

空值合并操作符 ??

当左侧的操作数为 null 或者 undefined 时,返回其右侧操作数,否则短路并返回左侧操作数。
不同于||的假值判断,常用于为空则赋于默认值场景

const foo = null ?? 'default string';
console.log(foo);
// expected output: "default string"

const baz = 0 ?? 42;
console.log(baz);
// expected output: 0

内置对象

详见TypeScript核心库定义文件
注意,NodeJS不是内置对象,如需使用,则应引入@types文件:

npm install @types/node --save-dev
上一篇 下一篇

猜你喜欢

热点阅读