Skip to main content

Числа и даты

Числа

В JavaScript все числа являются числами двойной точности в соответствии с 64-битным двоичным форматом. Целые числа не рассматриваются как отдельный тип чисел. В дополнение к числам с плавающей запятой, к числовому типу данных относятся также три символьные величины: +бесконечность, -бесконечность, и NaN (не-число).

NaN - это специальное значение, которое представляет ошибку вычисления. Это результат некорректной или неопределенной математической операции, например деления на ноль.

Infinity - это специальное значение, которое представляет бесконечность. Это значение возвращается при делении числа на ноль.

-Infinity - это специальное значение, которое представляет отрицательную бесконечность. Это значение возвращается при делении отрицательного числа на ноль.

console.log(0 / 0); // NaN
console.log(1 / 0); // Infinity
console.log(-1 / 0); // -Infinity

Объект Number

Объект Number является оберткой для чисел. Он позволяет вам работать с числами. Объект Number имеет ряд методов для работы с числами.

let num = new Number(123);

console.log(num.toString()); // "123"

Список свойств объекта Number:

КонстантаОписание
Number.MAX_VALUEНаибольшее число из возможных для представления
Number.MIN_VALUEНаименьшее число из возможных для представления
Number.NaNСпециальное "Не числовое" ("not a number") значение
Number.NEGATIVE_INFINITYСпециальное значение "Минус бесконечность"; возвращается при переполнении
Number.POSITIVE_INFINITYСпециальное значение "Плюс бесконечность"; возвращается при переполнении
Number.EPSILONРазница между единицей и наименьшим значением, большим единицы, которое может быть представлено типом Number.
Number.MIN_SAFE_INTEGERМинимальное целое, безопасное число в JavaScript.
Number.MAX_SAFE_INTEGERМаксимальное целое, безопасное число в JavaScript.

Список методов объекта Number:

МетодОписание
Number.parseFloat(string)Принимает строку как аргумент, и возвращает числовое значение с плавающей точкой, которое удалось распознать. Тоже самое что и глобальная функция parseFloat().
Number.parseInt(string, radix)Принимает строку как аргумент, и возвращает целочисленное значение в заданной системе исчисления, которое удалось распознать. Тоже самое что и глобальная функция parseInt().
Number.isFinite(number)Определяет, является ли число, переданное в качестве аргумента, конечным.
Number.isInteger(number)Определяет, является ли число, переданное в качестве аргумента, целым.
Number.isNaN(number)Определяет, является ли число, переданное в качестве аргумента, NaN (не числом). Аналогичный, но более надёжный метод чем глобальная функция isNaN().
Number.isSafeInteger(number)Определяет, является ли .число, переданное в качестве аргумента, целым и безопасным.

Список методов прототипов Number:

МетодОписание
toExponential()Возвращает строку, представляющую число в экспоненциальном представлении.
toFixed()Возвращает строку, представляющую число с заданным количеством разрядов после запятой.
toPrecision()Возвращает строку, представляющую число с указанной точностью.

Объект Math

Объект Math предоставляет встроенные математические константы и функции.

Список методов объекта Math:

ФункцияОписание
abs(x)Возвращает абсолютное значение (модуль) аргумента
sin(x), cos(x), tan(x)Стандартные тригонометрические функции; принимают аргументы в радианах
asin(x), acos(x), atan(x), atan2(y, x)Обратные тригонометрические функции; возвращают значения в радианах
sinh(x), cosh(x), tanh(x)Гиперболические тригонометрические функции; принимают аргументы в гиперболических углах
asinh(x), acosh(x), atanh(x)Обратные гиперболические тригонометрические функции; возвращают значения в гиперболических углах
pow(x, y), exp(x), expm1(x), log10(x), log1p(x), log2(x)Экспоненциальные и логарифмические функции
floor(x), ceil(x)Возвращают наибольшее/наименьшее целое, которое меньше/больше или равно входному значению
min(x, y, ...)Возвращают наименьшее из входных числовых значений, перечисленных через запятую
max(x, y, ...)Возвращают наибольшее из входных числовых значений, перечисленных через запятую
random()Возвращает случайное число от 0 до 1
round(x), fround(x), trunc(x), ceil(x)Функции округления и отсечения дробной части
sqrt(x), cbrt(x), hypot(x, y)Корень квадратный, корень кубический, корень квадратный из суммы квадратов аргументов
sign(x)Знак числа, показывает является ли входное число позитивным, негативным или равным нулю
clz32(x), imul(x, y)Количество первых нулевых бит в 32-битном двоичном представлении. Возвращает результат Си-подобного 32-битного целочисленного умножения двух аргументов.

Список констант объекта Math:

КонстантаОписание
Math.EЧисло Эйлера или Непера, основание натуральных логарифмов, приблизительно равное 2.718
Math.LN2Натуральный логарифм из 2, приблизительно равный 0.693
Math.LN10Натуральный логарифм из 10, приблизительно равный 2.303
Math.LOG2EДвоичный логарифм из числа Эйлера, приблизительно равный 1.443
Math.LOG10EДесятичный логарифм из числа Эйлера, приблизительно равный 0.434
Math.PIЧисло Пи, отношение длины окружности к её диаметру, приблизительно равное 3.14159
Math.SQRT1_2Квадратный корень из 1/2, приблизительно равный 0.707
Math.SQRT2Квадратный корень из 2, приблизительно равный 1.414