Функции Number получает параметр, который преобразовывает в число.

Численные преобразования для различных типов происходят по разному. Для логического типа: true - 1, false - 0. Для строк: пробельные символы по краям обрезаются, затем, если строку возможно преобразовать в число - то возвращается это число. Если нет - возвращается NaN.

Объекты при численных преобразованиях превращаются в NaN (либо согласно методу valueOf()).

Кроме Функции Number преобразование к числу происходит при сравнении значений различных типов. А также при любых математических с числом (кроме суммирования со строкой).

См. также String (строковые) и Boolean (логические) преобразования.

Синтаксис

Number(что нужно преобразовать);

Примеры

Пример

Преобразуем несколько значений в число:

Number(true) //1
Number(false) //0

Number('53') //53
Number(' 5 ') //5
Number('') //0
Number('a5') //NaN
Number('5a') //NaN
Number('5 5') //NaN
Number('true') //NaN

Number({}) //NaN
Number([]) //'' -> 0
Number([1]) //'1' -> 1
Number([1,2]) //'1,2' -> NaN

Number(new Date()) //''

Пример

Но в большинстве случаев, для преобразования в число пишут:

+true //1
+false //0

+'53' //53
+{} //NaN
+[1,2] //'1,2' -> NaN

+new Date() //''

Пример

Умножим введенное пользователем число на 2:

var number = +prompt('Введите число', '');
alert(number + ' * 2 = ' + number * 2);

В первой строке написано: +prompt('Введите число', ''). Оператор '+' здесь необходим для того, чтобы преобразовать введенную строку в число (так как prompt возвращает именно строку). Если бы мы этого не сделали. То результат всегда был бы один - NaN.

Результат выполнения кода: