JavaScript: Числа

JavaScriptКомментариев нет

Функции, методы и свойства

isNaN(n) — проверяет значение переменной n и если она равно NaN то возвращает true, в противном случае false;

isFinite(n)  —  преобразует n в число и проверяет не равно ли оно: Infinity/-Infinity/NaN. Если не равно возвращает true, в противном случае false.

parseInt(s) — приводит строку s к целому числу. Преобразование идет символ за символом, пока не попадется не числовой символ(кроме пробелов и переноса строки). Вторым параметров к функции можно указать систему счисления.

parseFloat(s) — приводит строку s к числу с плавающей точкой. Работает аналогично parseInt(s).

Math.floor(n) — округляет n вниз до целого числа. Например: Math.floor(3.1); // 3

Math.ceil(n) — округляет n вверх до целого числа. Например:

Math.round(n) — округляет n до ближайшего целого. Например:

Math.random() —  возвращает псевдо случайное число от 0 до 1(0 — включительно, 1 не включительно).

Math.max() — возвращает наибольшее из нуля или более чисел.

Math. — полный список математических функций можно посмотреть тут: https://developer.mozilla.org/ru/docs/Web/JavaScript/Reference/Global_Objects/Math

n.toFixed(y) — метод округляет n  до заданной точности y и возвращает строку. Например:

Данный метод округляет с погрешностью. Для более точного округления лучше использовать «трюк«, см. ниже.

n.toLocaleString() — метод используется для красивого вывода числа, например:

Математические нюансы в javascript:

NaN

NaN — ошибка при вычислениях, NaN не равно NaN

Деление на ноль

При деление на 0 javascript возвращает Infinity или -Infinity для отрицательных чисел( например: alert( -1 / 0); // -Infinity )

Большие числа

Числа которые не входят в 64-битного формат будут возвращать Infinity (например: alert( 1e500 ); // Infinity)

Погрешность в вычислениях

В javascript есть погрешность в вычислениях, которую легко проверить:

Погрешность появляется в вычислениях переменных с плавающей точкой(в целых нет). Это происходит из за того что на хранение числа выделяется 8 байт(=64 бита) а числа с плавающей точкой это бесконечная дробь, которая все же ограничена 64 битами. Для правильного вычисления следует округлять числа. Обычно хватает до 10го знака.

Так же следует учесть, следующий пример:

 

Трюки

Точная проверка на число:

Округление до заданной точности:

Округление битовыми операторами:

Функцию isNaN() можно написать самому:

Преобразование к числу можно сделав подставив к переменной символ «+«, например:

 

Источник: https://learn.javascript.ru/number


Будь первым кто прокомментирует статью.

Добавить комментарий

Войти с помощью: