使用 JavaScript 将 NaN 转换为 0

使用逻辑 OR (||) 运算符将 NaN 转换为 0,例如 const result = val || 0;. 如果左边的值是假的,则逻辑 OR (||) 运算符返回右边的值。

let val = NaN;

val = val || 0;

console.log(val); // 👉️ 0

如果左边的值是假的,则逻辑 OR (||) 运算符返回右边的值。

JavaScript 中的假值是 nullundefinedfalse0、**””(空字符串)、NaN**(不是数字)。

这意味着我们没有明确检查该值是否等于 NaN,我们检查该值是否为假。 所以它可能是一个空字符串、undefinednull 等。

一个简单的考虑方法是 – 运算符右侧的值是一个备用值,以防左侧的值是假的。

或者,我们可以显式检查该值是否为 NaN

let val = NaN;

if (Number.isNaN(val)) {
  val = 0;
}

console.log(val); // 👉️ 0

如果存储的值等于 NaN,则使用 let 关键字声明 val 变量允许我们重新分配它。

虽然这种方法有点冗长,但它仍然易于阅读和直观。

或者,我们可以使用三元运算符

使用三元运算符将 NaN 转换为零,例如 const result = Number.isNaN(val) ? 0 : val;。 如果值等于 NaN,则运算符返回 0,否则返回值。

let val = NaN;

const result = Number.isNaN(val) ? 0 : val;

console.log(result); // 👉️ 0

三元运算符与 if/else 语句非常相似。

如果问号左边的表达式计算为真值,则返回冒号左边的值,否则返回右边的值。

注意,我们使用 Number.isNaN 方法来检查值是否为 NaN(不是数字)。

我们不应该尝试显式地与 NaN 进行比较,因为 NaN 是 JavaScript 中唯一的值,它不等于自身。

console.log(NaN === NaN); // 👉️ false
免责声明:
1.本站所有内容由本站原创、网络转载、消息撰写、网友投稿等几部分组成。
2.本站原创文字内容若未经特别声明,则遵循协议CC3.0共享协议,转载请务必注明原文链接。
3.本站部分来源于网络转载的文章信息是出于传递更多信息之目的,不意味着赞同其观点。
4.本站所有源码与软件均为原作者提供,仅供学习和研究使用。
5.如您对本网站的相关版权有任何异议,或者认为侵犯了您的合法权益,请及时通知我们处理。
火焰兔 » 使用 JavaScript 将 NaN 转换为 0