欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程资源 > 编程问答 >内容正文

编程问答

TypeScript里的空值合并运算符(双问号)用法

发布时间:2023/12/19 编程问答 45 豆豆
生活随笔 收集整理的这篇文章主要介绍了 TypeScript里的空值合并运算符(双问号)用法 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

当左侧操作数为 null 或 undefined 时,其返回右侧的操作数,否则返回左侧的操作数。

例子:

const foo = null ?? 'default string';

编译后的JavaScript代码:

var _a; var foo = (_a = null) !== null && _a !== void 0 ? _a : 'default string';

可见,这个例子,foo必定为default string, 因为编译后的JavaScript代码里,已经能看到null被显式地赋给_a了。

空值合并运算符的短路用法:当空值合并运算符的左表达式不为 null 或 undefined 时,不会对右表达式进行求值。

看个例子:

function A() { console.log('A was called'); return false;}function B() { console.log('B was called'); return false;}console.log(A() ?? B());

生成的JavaScript代码:

var _a; function A() { console.log('A was called'); return false; } function B() { console.log('B was called'); return false; } console.log((_a = A()) !== null && _a !== void 0 ? _a : B());

执行JavaScript,可见,??右边的B表达式根本就没有进行求值。

总结

以上是生活随笔为你收集整理的TypeScript里的空值合并运算符(双问号)用法的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。