Когда вы добавляете суффикс n
к обычному целому числу в JavaScript, вы работаете с типом данных BigInt. Этот тип данных был введен для работы с большими целыми числами, которые превышают пределы безопасных чисел в JavaScript, определяемые константой Number.MAX_SAFE_INTEGER
(2^53 — 1).
Пример использования BigInt
Давайте рассмотрим пример:
let sum = 1n + 2n;
console.log(typeof sum);
Что происходит в этом коде? Здесь мы складываем два числа, но не обычные числа, а числа в формате BigInt. Результат сложения 1n
и 2n
будет 3n
. Тип данных результата, определяемый оператором typeof
, вернется как bigint
.
Что такое BigInt и как его использовать?
BigInt — это специальный встроенный объект в JavaScript, который позволяет представлять целые числа с произвольно большой точностью. Это особенно важно, когда вам нужно работать с числами, которые выходят за пределы безопасных целых чисел.
Существует два способа создания числа в формате BigInt:
- Добавление суффикса
n
к целому числу:
let big = 1000000000n; // 1000000000n
2. Использование конструктора BigInt()
:
let bigN = BigInt(123); // 123n
Различные способы использования BigInt
Конструктор BigInt()
позволяет создавать числа в формате BigInt не только из десятичных чисел, но также из строк, представляющих числа в различных системах счисления:
- Шестнадцатеричные числа:
let bigHex = BigInt("0xffffffffffffffff"); // 18446744073709551615n
- Двоичные числа:
let bigBin = BigInt("0b111"); // 7n
- Числа в строковом формате:
let bigS = BigInt("234"); // 234n
Поведение BigInt
В задачах, связанных с арифметическими операциями, числа в формате BigInt ведут себя подобно обычным числам. Например, сложение 1n
и 2n
приводит к результату 3n
. Однако важно помнить, что BigInt не может быть использован совместно с обычными числами (тип number
) в одной операции без явного приведения типов.
Заключение
Когда вы добавляете суффикс n
к числу в JavaScript, вы преобразуете его в формат BigInt, который предназначен для работы с большими целыми числами. В результате выполнения операции, как в нашем примере, typeof
вернет bigint
, указывая на тип данных результата.
Таким образом, использование суффикса n
позволяет вам безопасно работать с большими числами в JavaScript, избегая потери точности, которая может возникнуть при работе с обычными числами.