number

number

> Функции

Преобразует значение в число. Если значение является строкой, числовая функция попытается преобразовать его в число, если значение уже является числом, функция возвращает число, а для любого другого типа возвращает ноль.

Настройки
Обратная связь
TypeScript

В JavaScript Number(value) возвращает NaN, когда преобразование не удаётся, тогда как number в LeekScript возвращает 0. Проверяйте результат через Number.isNaN(), никогда через === NaN: NaN не равно ничему, даже самому себе. Осторожно с крайними случаями: Number("") и Number(null) равны 0, Number("0x10") равно 16. Наконец, Number("12abc") равно NaN, тогда как parseInt("12abc") равно 12 — parseInt останавливается на первом недопустимом символе, Number требует, чтобы вся строка была числом.

Python

В Python нет единого преобразования: int(value) даёт целое число, float(value) — число с плавающей точкой. На строке, которая не является числом, оба возбуждают ValueError вместо того, чтобы вернуть 0, как number в LeekScript, — float("abc") и float("") завершаются ошибкой, и int("12.5") тоже, потому что int() не принимает дробную часть: пишите int(float("12.5")). Пробелы вокруг допускаются, float(" 12 ") равно 12.0. Применённая к числу с плавающей точкой, int() отсекает в сторону нуля: int(12.9) равно 12, а int(-12.9) равно -12. Предусмотрите try / except ValueError, как только строка приходит не от вас.

Примеры

число("12345") // 12345 число("3.14159") // 3.14159 число("привет") // null

См. также