Если унарные операторы +
/-
используются для выполнения преобразований в качестве функции каста Number()
, то зачем нам нужны унарные операторы? Какая особая потребность в этих унарных операторах?
Какое значительное использование унарных операторов плюс и минус?
Ответ 1
Оператор Unary +
преобразует свой операнд в тип Number.
Оператор Unary -
преобразует свой операнд в тип Number, а затем отменяет его.
(за спецификация ECMAScript)
На практике Unary -
используется для простого размещения отрицательных чисел в нормальных выражениях, например:
var x = y * -2.0;
Это унарный минус-оператор на работе. Унарный +
эквивалентен конструктору Number(), называемому как функция, что подразумевается спецификацией.
Я могу только размышлять над историей, но унарные +/- операторы ведут себя одинаково на многих языках C-производных. Я подозреваю, что поведение Number() является дополнением к этому языку.