{"id":4098,"url":"\/distributions\/4098\/click?bit=1&hash=4a2746815553d402e055c9b00a2035b35e47c0edcda5fd7253d5e57f885e8ecc","title":"\u0410\u0444\u0435\u0440\u0438\u0441\u0442\u043a\u0430, \u0440\u0435\u0431\u0451\u043d\u043e\u043a \u0438 \u043f\u0430\u043d\u043a \u2014 \u0447\u0442\u043e \u043e\u0434\u0435\u0436\u0434\u0430 \u0433\u043e\u0432\u043e\u0440\u0438\u0442 \u043e \u043f\u0435\u0440\u0441\u043e\u043d\u0430\u0436\u0430\u0445?","buttonText":"\u0423\u0437\u043d\u0430\u0442\u044c","imageUuid":"e6048338-fd6d-53fa-aaf4-387384748bf7"}

Тип данных BigInt в JavaScript

BigInt

bigint - числовой примитивный тип данных в JavaScript, позволяющий работать с числами произвольной точности. Проблема в том что тип данных Number может хранить числа только в определенном диапазоне.

const biggestNumber = Number.MAX_SAFE_INTEGER; console.log(biggestNumber); console.log(biggestNumber + 1); console.log(biggestNumber + 2); console.log(biggestNumber + 3); console.log('---- BigInt Examples ----');

Если мы будем увеличивать это число на Number не сможет точно сохранить результат. BigInt позволяет нам хранить числа за пределами максимального целочисленного значения Number.

Создать BigInt можно следующим образом:

const bigIntExample_1 = 100n; const bigIntExample_2 = BigInt(100); console.log(bigIntExample_1, bigIntExample_2);

Просто добавляем суффикс 'n' в конце литерала числа или используем функцию BigInt().

Теперь попробуем повторить первый пример только уже с использованием BigInt

const bigIntNumber = BigInt(Number.MAX_SAFE_INTEGER); console.log(bigIntNumber + 1n); console.log(bigIntNumber + 2n); console.log(bigIntNumber + 3n); console.log(bigIntNumber + 4n);

Аналогично как и с типом данных Number мы можем разделять большие числа через '_'.

const bigIntExample_3 = 1_000_000_000_000_000n; console.log(bigIntExample_3);

Если мы будем сравнивать BigInt c Number через '===' то при одинаковых значениях получим false, так как это разные типы данных.

const bigIntExample_4 = 10n; const numberExample_1 = 10; console.log(bigIntExample_4 === numberExample_1); // false console.log(bigIntExample_4 == numberExample_1); // true

В таком случае мы можем использовать оператор '==', тогда сравнение пройдет успешно. Так как '==' сравнивает только значения без приведения типов.

P.S. Больше информации в видеоуроке
P.P.S. Больше уроков у меня на канале.

0
2 комментария
Ангельская пыль

Ну всё дтф теперь точно сайт о порно.

Ответить
Развернуть ветку
Vladimir Shaitan
Автор

ммм.... порно

Ответить
Развернуть ветку
-5 комментариев
Раскрывать всегда
null