gpt4 book ai didi

javascript - 为什么我们不能递增 (++) 或递减 (--) 数字文字

转载 作者:行者123 更新时间:2023-11-28 18:04:39 28 4
gpt4 key购买 nike

例如,在下面的 JavaScript 代码中,为什么我们在使用变量时不会出现错误,但在使用数字文字时却出现错误(在 Node v6.9.5 上运行)?

let x = 2;
console.log(x++); //2

let y = 2;
console.log(++y); //3

console.log(2++); //ReferenceError: Invalid left-hand side expression in postfix operation
console.log(++2); //ReferenceError: Invalid left-hand side expression in prefix operation

我的理解是,这不起作用,因为你无法改变文字 2。在前面的示例中,你返回了 x 或 y(在递增之前或之后),因此它现在等于之前的 +1值(因此 x/y 现在指向 3,而不是 2)。但是,您不能将 2 递增为之前的值 +1,然后让它指向文字 3。2 将始终是 2,2 永远不会指向 3。

我的推理正确吗?

最佳答案

文字是常量,递增/递减将尝试分别更改其参数。但常数值不能改变。

这就像编写类似的代码

2 = 2 + 1;

关于javascript - 为什么我们不能递增 (++) 或递减 (--) 数字文字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42912960/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com