Преобразование чисел

Числа внутренне основаны на формате 64 с основанием 2. Это означает, что он хранится в двоичном формате (на основе 0 и 1). В JavaScript 0.1 трудно прочитать в двоичном виде, что приводит к необычному числу. Например;

console.log(0,1 + 0,2);

console.log(0,1 + 0,2 === 0,3);

В результате получается бесконечная дробь. JavaScript может округлять некоторые значения за кулисами, но в таких случаях он не может этого сделать. Следовательно, почему вместо этого представлено необычное значение.

Приведение типов

Приведение типов — это преобразование одного типа объекта в другой объект другого типа. Например;

console.log(Число(‘69’));

console.log('69');

console.log(+’69’);

JavaScript выполнит приведение типов, преобразуя строку в число, если включен знак «+».

Разбор

Синтаксический анализ означает, что метод берет ввод и преобразует его в другой вывод. Например;

console.log(Number.parseInt('456lmg'));

Это даст результат 456 в числовом формате. Однако для работы parseInt строка должна начинаться с цифры. Если это не так, результат будет NaN (не число);

console.log(Number.parseInt('lmg456'));

Мы можем использовать parseFloat, если нам нужно регистрировать десятичные значения. Использование parseInt не поможет нам достичь этого результата;

console.log(Number.parseFloat('4.5666'));

console.log(Число.parseInt('4.5666'));

Мы также можем проверить, не является ли значение числом;

console.log(Число.isNaN(69));

console.log(Число.isNaN(‘69’));

console.log(Число.isNaN(+’69’));

console.log(Число.isNaN(69/0));

Все они приведут к ложным результатам, так как являются числами.

Мы также можем проверить, является ли значение числом;

console.log(Число.isFinite(69));

console.log(Число.isFinite(‘69’));

console.log(Number.isFinite(+’69’));

console.log(Число.isFinite(0/69));

Квадратный корень и кубический корень

Мы можем использовать определенные методы, чтобы найти квадратный корень и кубический корень чисел;

Квадратный корень;

console.log(Math.sqrt(81));

console.log(81 ** (1/2));

кубический корень;

console.log(69 ** (1/3));

Максимальное, минимальное и значение Pi

Мы можем использовать определенные методы, чтобы получить максимальное и минимальное значение набора чисел;

console.log(Math.max(576, 389483, 5653264, 3785748));

console.log(Math.min(576, 389483, 5653264, 3785748));

Мы можем использовать этот метод, чтобы получить значение Pi;

console.log(Math.PI);

Генерация случайных чисел

Этот метод можно использовать для игры или для вашего удобства;

console.log(Math.trunc(Math.random() * 12 + 1));

Сначала мы используем метод trunc, чтобы удалить десятичные разряды из чисел. Затем мы используем случайный метод для генерации числа от 1 до 12.

Округление чисел

Сначала мы можем использовать метод trunc, если нужно округлить целое число;

console.log(Math.trunc(87.5));

Мы также можем использовать метод округления, чтобы округлить целое число до ближайшего значения;

console.log(Math.round(87.5));

console.log(Math.round(87.3));

console.log(Math.round(87.7));

Наконец, мы также можем округлить целое число до наибольшего или наименьшего значения;

самое низкое значение;

console.log(Math.floor(87.5));

console.log(Math.floor(87.3));

console.log(Math.floor(87.7));

Высшее значение;

console.log(Math.ceil(87.5));

console.log(Math.ceil(87.3));

console.log(Math.ceil(87.7));

При использовании отрицательных значений метод trunc удалит десятичную дробь, а метод Floor округлит ее в большую сторону;

console.log(Math.trunc(-87.5));

console.log(Math.floor(-87.5));

Числа также можно округлить до определенного десятичного знака, в зависимости от ваших предпочтений. Однако этот метод вернет строку, а не число;

console.log((87.5533).toFixed(0));

console.log((87.5533).toFixed(2));

console.log((87.5533).toFixed(3));

console.log((87.5533).toFixed(4));

Оператор остатка

Оператор остатка вернет остаток, оставшийся после деления одного операнда на другой операнд. Он всегда будет принимать знак делимого.

console.log(4 % 2);

console.log(6 % 5);

У первого бревна не будет остатка, поскольку 4 = 2 * 2, тогда как у второго бревна будет остаток 1, поскольку 6 = (2 * 2) + 1 (что является остатком). Мы также можем использовать оператор остатка, чтобы проверить, является ли число четным, написав небольшую функцию;

const evenNumbers = число => число % 2 === 0;

console.log(evenNumbers(46));

console.log(evenNumbers(65));

console.log(evenNumbers(88));

BigInt

BigInt был представлен в ES2020. Это поможет вам сохранить число настолько большим, насколько это разрешено. Раньше было только определенное число, которое JavaScript мог безопасно представить;

console.log(Число.MAX_SAFE_INTEGER);

Or

console.log(2 ** 53–1);

Это дало результат 9007199254740991. Если вы попытаетесь увеличить эту сумму, некоторые результаты окажутся неточными. Пример приведен ниже;

console.log(2 ** 53 + 1);

console.log(2 ** 53 + 2);

console.log(2 ** 53 + 3);

console.log(2 ** 53 + 4);

Если вы заметили результаты, JavaScript может обрабатывать некоторые из них, но не все. Вот почему был представлен BigInt.

console.log(90071992547409914545154);

console.log(90071992547409914545154n);

Мы также можем выполнять математические операции с BigInt;

const thisIsANumber = 90071992547409914545154n;

const thisIsARegularNumber = 45;

const total = thisIsANNumber * BigInt (thisIsARegularNumber);

console.log(всего);

Однако нам нужно преобразовать значение в BigInt, иначе мы не сможем выполнить эти операции. Мы получим ошибку преобразования, если попытаемся это сделать.

Мы также можем использовать операторы равенства, чтобы узнать, является ли значение истинным или ложным. Однако при использовании оператора строгого равенства типы и значения должны быть точно такими же, иначе они вернутся как ложные. Это не тот же случай для оператора свободного равенства. Ниже приведен простой пример;

Оператор строгого равенства;

console.log(69n === 69);

console.log(69n === ‘69’);

Оператор свободного равенства;

console.log(69n == 69);

console.log(69n == ‘69’);

Мы также можем использовать деление и умножение для BigInt. Ниже приведен простой пример;

console.log(4n/2n);

console.log(4 / 2);

Результатом будет 2n (для BigInt) и 2 соответственно.