gpt4 book ai didi

字符串上的 JavaScript 增量一元运算符 (++)

转载 作者:行者123 更新时间:2023-12-04 02:28:35 25 4
gpt4 key购买 nike

我在 Chromium 版本 53.0.2785.143 上构建在 Ubuntu 上,在 Ubuntu 16.04(64 位)上运行

根据ECMAScript® Language Specification , 前缀增量运算符的计算方式如下:

Prefix Increment Operator evaluation steps

考虑到这一点,我无法解释这个结果:

++'1';
> Uncaught ReferenceError: Invalid left-hand side expression in prefix operation

当以下代码像魅力一样工作时:
var x = '1'; 
++x;
> 2

据我了解,在这两种情况下,第二步的前 3 个要点都是正确的,而对于 ++'1'案例第四个子弹也是正确的(但为什么?)和 ++x如果它是错误的,则不会引发错误。我对吗?

PS:Firefox 抛出 SyntaxError: invalid increment operand而不是 ReferenceError

最佳答案

问题是你的 ++运算符隐含地涉及 作业 ,并且您不能为字符串常量分配新值。注意

++2;

出于同样的原因也是错误的。

关于字符串上的 JavaScript 增量一元运算符 (++),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40000531/

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