Каталог
Веб-разработка с нуля: четыре курса по порядку.
HTML, затем CSS, JavaScript и SQL. Каждый курс говорит, что нужно знать до него и что вы будете уметь после.
Загружаем курсы…
Каталог
HTML, затем CSS, JavaScript и SQL. Каждый курс говорит, что нужно знать до него и что вы будете уметь после.
Загружаем курсы…
Урок 79 из 114 · 8 мин
Тип BigInt, конструктор BigInt(), операции, BigInt.asIntN, asUintN, toString, toLocaleString и valueOf.
Банк присылает номера платежей длиной 20 цифр — и последние цифры портятся!
Обычное число точно только до 2⁵³. Для любых целых есть BigInt.
BigInt()BigInt("12345678901234567890") или литерал 123n. Не смешивается с обычными числами в арифметике: 1n + 1 — ошибка. Деление отбрасывает дробь.const id = BigInt("12345678901234567890");
console.log(id + 1n, 7n / 2n, typeof id);BigInt.asIntN() · BigInt.asUintN()BigInt.asUintN(8, 257n) → 1n — как переполнение в 8-битном целом без знака; asIntN — со знаком.console.log(BigInt.asUintN(8, 257n), BigInt.asIntN(8, 255n));toString() · toLocaleString() · valueOf()toString(16) — в любой системе, toLocaleString("ru-RU") — с разрядами, valueOf() — примитив.const n = 12345678901234567890n;
console.log(n.toString(16), n.toLocaleString("ru-RU"), typeof n.valueOf());BigInt и Number не смешиваются: переводи явно — BigInt(n) или Number(big).
Напиши nextId(id): принимает строку из цифр, возвращает строку следующего номера через BigInt (без потери точности).
Выберите один ответ.
Что будет при 10n + 1?
Выберите один ответ.
Чему равно 7n / 2n?
Проверяем состояние обучения…