javascript - JavaScript 中 +a++b 是什么意思?

标签 javascript multidimensional-array

有一个关于堆栈溢出的嵌套数组问题的答案,其中涉及 return 语句 +a++b。 (无句号)这是什么?它有什么作用?它似乎添加了,但我不确定它是如何做到的。它与a+b有什么不同?代码如下,并且可以运行:

var array= [1, 2, [3, 4], [], [5]];
var sum = array.toString().split(",").reduce(function(a, b) { return +a + +b; 
});

console.log(sum);

最佳答案

变量前面的+是一元+运算符。您可能熟悉一元 -,例如-x

+x-x 都将 x 转换为数字,但 -x 也会更改其符号。这不是一元 + 存在的主要目的,但它是一个很好的副作用。

因此,从这个示例中可以看出 a + b+a++b 之间的区别:

x = '9';          // '9'
x = +'9';         // 9
x = '9' + '9';    // '99'
x = +'9' + +'9';  // 18

关于javascript - JavaScript 中 +a++b 是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52132654/

相关文章:

javascript - 在多维对象数组中设置属性值

javascript - 揭示模块模式中的私有(private)成员

javascript - ngModel.setViewValue 不更新 html 控件

javascript - 单击同一行中的任何复选框时,选中/取消选中表格行中的复选框

java - 我正在尝试以垂直模式从左上角到右下角搜索我的java多维数组。我的代码有什么问题?

c++ - GHashTable 的大小/调整大小

c# - 将数据推送到 ko.observableArray

javascript - 如何在选择选项中使用复选框

php - 获取MySql数据并放入多维数组中

使用 array_map/array_walk 函数进行 PHP 多维数组转换