Javascript / Typescript如果变量存在则返回如果不返回其他内容[重复]

Posted

技术标签:

【中文标题】Javascript / Typescript如果变量存在则返回如果不返回其他内容[重复]【英文标题】:Javascript/Typescript if variable exists return if not return something else [duplicate] 【发布时间】:2022-01-23 15:11:12 【问题描述】:

有语法 variable ? variable : something else,但我能不能省略第二个变量?

拥有像variable ?: something else 这样的语法会很酷。 有这样的东西吗?

谢谢

【问题讨论】:

variable || something else (logical or)? variable ?? something else (nullish coalescing)? Nullish coalescing operator (??) 【参考方案1】:

你可以像 variable ?? something elsevariable || something else 那样做,这取决于你想要什么行为

nullish 合并运算符 (??) 是一种逻辑运算符,当其左侧操作数为 null 或未定义时返回其右侧操作数,否则返回其左侧操作数。

这可以与逻辑 OR (||) 运算符进行对比,如果左侧操作数是任何假值,则返回右侧操作数,而不仅仅是 null 或未定义。换句话说,如果你使用 ||要为另一个变量 foo 提供一些默认值,如果您认为某些虚假值是可用的(例如,'' 或 0),您可能会遇到意外行为。有关更多示例,请参见下文。

?? Nullish coalescing operator || Logical OR

【讨论】:

对这两个表达式之间的区别的一些解释将大大有助于使其成为一个有用的答案。

以上是关于Javascript / Typescript如果变量存在则返回如果不返回其他内容[重复]的主要内容,如果未能解决你的问题,请参考以下文章

ALM:TypeScript / JavaScript 的下一代 IDE

从 JavaScript 到 TypeScript - 接口

TypeScript 与 JavaScript:你应该知道的区别

Node.js、TypeScript、JavaScript 和 Angular 之间的连接 [关闭]

第1741期JavaScript和TypeScript中的void

TypeScript 官方:JavaScript 中直接支持类型!