+= (加等于)是如何工作的?

61

我对+=符号有点困惑。它是如何工作的?

  1. 1 += 2 // 等于什么?

  2. 还有这个

    var data = [1,2,3,4,5];
    var sum = 0;
    data.forEach(function(value) {
        sum += value; 
    });
    sum = ?
    

1
在执行 1 += 2 后,1 的值变为了3。这并不是什么大问题。但是 1 -= 1; 会让布尔表达式变得非常麻烦! - SF.
4
显而易见的是——你可以尝试在浏览器的JavaScript控制台中运行以下代码:在forEach之后,sum的值为15。 - Sam Dutton
不知道你可以使用值内联执行此操作。 - Zach
14个回答

0

x+=y 在许多编程语言中是 set x to x + y 的简写。如其名称所示,data 中的数字之和将会是这个简写表达式的结果。


-1

x += 1 只是 x = x + 1 的简写形式。它也可以用于字符串:

var string = "foo"
string += "bar"

-1

NO 1+=2!=2 的意思是你要加上 1+2。 但这会导致语法错误。 假设一个变量是 int 类型,如 int a=1; 那么 a+=2; 意味着 a=1+2; 并将 a 的值从 1 增加到 3。


-2
  • 1 += 2 不会抛出错误,但你仍然不应该这样做。在这个语句中,你基本上是在说“将1设置为1 + 2”,但1是一个常数,而不是类型为:number:string的变量,所以它可能什么也不做。说
    var myVariable = 1
    myVariable += 2
    console.log(myVariable)
    
    会将3记录到控制台,因为x += y只是x = x + y的简写。
  • var data = [1,2,3,4,5]
    var sum
    data.forEach(function(value){
      sum += value
    })
    
    会使sum = 15,因为:
    sum += 1 //sum = 1
    sum += 2 //sum = 3
    sum += 3 //sum = 6
    sum += 4 //sum = 10
    sum += 5 //sum = 15
    

  • 网页内容由stack overflow 提供, 点击上面的
    可以查看英文原文,
    原文链接