如果使用一元的
+
/-
运算符来执行类似于Number()
转换函数的转换,那么为什么我们还需要一元运算符?这些一元运算符有什么特殊需求呢?+
/-
运算符来执行类似于Number()
转换函数的转换,那么为什么我们还需要一元运算符?这些一元运算符有什么特殊需求呢?一元+
运算符将其操作数转换为数字类型。
一元-
运算符将其操作数转换为数字类型,然后对其取反。(根据ECMAScript规范)
在实践中,一元-
通常用于在普通表达式中表示负数,例如:
var x = y * -2.0;
这就是一元减运算符在起作用。一元+
等同于调用Number()构造函数并将其作为函数使用,这是规范暗示的。
我只能猜测历史背景,但许多衍生自C的语言中,一元+/ - 运算符的行为类似。 我怀疑这里对该语言进行了Number()行为的添加。
const result = +yourFunc()
替代
const result = Number(yourFunc())
或者
const result = -yourFunc()
替代
const result = -Number(yourFunc())