减少( - )
递减运算符(--)将数字减 1。
- 如果用作
n的后缀,则运算符返回当前的n,然后分配递减的值。 - 如果用作
n的前缀,则运算符分配递减的n,然后返回更改的值。
var a = 5, // 5
b = a--, // 5
c = a // 4
在这种情况下,b 被设置为 a 的初始值。因此,b 将是 5,c 将是 4。
var a = 5, // 5
b = --a, // 4
c = a // 4
在这种情况下,b 被设置为 a 的新值。因此,b 将是 4,c 将是 4。
常见用途
减量和增量运算符通常用于 for 循环,例如:
for (var i = 42; i > 0; --i) {
console.log(i)
}
注意如何使用前缀变量。这确保不会不必要地创建临时变量(以在操作之前返回值)。
注意:
--和++都不像普通的数学运算符,而是非常简洁的赋值运算符。尽管有返回值,但是x--和--x都重新分配给x,这样x = x - 1。const x = 1; console.log(x--) // TypeError: Assignment to constant variable. console.log(--x) // TypeError: Assignment to constant variable. console.log(--3) // ReferenceError: Invalid left-hand size expression in prefix operation. console.log(3--) // ReferenceError: Invalid left-hand side expression in postfix operation.