Добрый день, подскажите, почему в Javascript минус перед "строкой" превращает ее в число?
Например:
typeof (-"30"); // number;
typeof ("30"); // string;
Спасибо!!
Согласно спецификации
The unary - operator converts its operand to Number type and then negates it. Negating +0 produces −0, and negating −0 produces +0.
Оператор "Унарный –" преобразует свой операнд к типу Number и затем инвертирует знак. Инвертирование для +0 даст −0, и для −0 - +0.
Далее следует алгоритм работы данного оператора:
ToNumberNaN вернуть NaNСборка персонального компьютера от Artline: умный выбор для современных пользователей