【发布时间】:2023-01-24 15:39:35
【问题描述】:
最近在研究JavaScript, 但我没有得到 [undefined] - x something is -x 但未定义 - x 是 NaN ...
console.log(undefined-3); //NaN
console.log([undefined]-3); // -3
【问题讨论】:
-
因为 JavaScript 很奇怪。
标签: javascript node.js
最近在研究JavaScript, 但我没有得到 [undefined] - x something is -x 但未定义 - x 是 NaN ...
console.log(undefined-3); //NaN
console.log([undefined]-3); // -3
【问题讨论】:
标签: javascript node.js
第一个示例 console.log(undefined-3); 的结果为 NaN,因为 undefined 是 JavaScript 中的一个特殊值,表示已声明但尚未赋值的变量。当它用于数学运算时,结果为 NaN(非数字)。
第二个示例 console.log([undefined]-3); 结果为 -3,因为包含未定义元素的数组被强制转换为字符串,在本例中等于“undefined”。然后它被转换为一个数字,即 NaN,然后它被减去 3,结果是 -3。
【讨论】: