В этом руководстве вы узнаете о JavaScript Number с помощью примеров.
В JavaScript числа - это примитивные типы данных. Например,
const a = 3; const b = 3.13;
В отличие от некоторых других языков программирования, вам не нужно специально объявлять целые или плавающие значения с помощью int , float и т. Д.
Вы можете использовать экспоненциальную запись e, чтобы включать слишком большие или слишком маленькие числа. Например,
const a1 = 5e9; console.log(a1); //5000000000 const a2 = 5e-5; console.log(a2); // 0.00005
Числа также можно обозначать в шестнадцатеричной системе счисления. Например,
const a = 0xff; console.log(a); // 255 const b = 0x00 ; console.log(b); // 0
+ Оператор с числами
Когда +
используется с числами, он используется для сложения чисел. Например,
const a = 4 + 9; console.log(a); // 13
Когда +
используется с числами и строками, он используется для их объединения. Например,
const a = '4' + 9; console.log(a); // 49
Когда числовая строка используется с другими числовыми операциями, числовая строка преобразуется в число. Например,
const a = '4' - 2; console.log(a); // 2 const a = '4' / 2; console.log(a); // 2 const a = '4' * 2; console.log(a); // 8
JavaScript NaN
В JavaScript NaN
(Not a Number) - ключевое слово, указывающее, что значение не является числом.
Выполнение арифметических операций (кроме +
) с числовым значением со строкой приводит к NaN
. Например,
const a = 4 - 'hello'; console.log(a); // NaN
Встроенная функция isNaN()
может использоваться, чтобы определить, является ли значение числом. Например,
const a = isNaN(9); console.log(a); // false const a = isNaN(4 - 'hello'); console.log(a); // true
Когда typeof
оператор используется для NaN
значения, он дает числовой вывод. Например,
const a = 4 - 'hello'; console.log(a); // NaN console.log(typeof a); // "number"
Бесконечность JavaScript
В JavaScript, когда выполняется вычисление, которое превышает наибольшее (или наименьшее) возможное число, возвращается Infinity
(или -Infinity
). Например,
const a = 2 / 0; console.log(a); // Infinity const a = -2 / 0; console.log(a); // -Infinity
JavaScript BigInt
В JavaScript тип Number может представлять только числа меньше (2 53 - 1) и больше, чем - (2 53 - 1) . Однако, если вам нужно использовать большее число, вы можете использовать тип данных BigInt.
Число BigInt создается путем добавления n в конец целого числа. Например,
// BigInt value const value = 900719925124740998n; // Adding two big integers const value1 = value + 1n; console.log(value1); // returns "900719925124740999n"
Примечание. BigInt появился в более новой версии JavaScript и не поддерживается многими браузерами. Посетите службу поддержки JavaScript BigInt, чтобы узнать больше.
Номера JavaScript хранятся в 64-битном формате
В JavaScript числа хранятся в 64-битном формате IEEE-754, также известном как «числа с плавающей запятой двойной точности».
Числа хранятся в 64-битных позициях (число хранится в позициях от 0 до 51, показатель степени - в позициях от 52 до 62 бит, а знак - в позиции 63 бита).
Числа | Экспонента | Знак |
---|---|---|
52 бита (0 - 51) | 11 бит (52-62) | 1 бит (63) |
Проблемы с точностью
Операции с числами с плавающей запятой приводят к неожиданным результатам. Например,
const a = 0.1 + 0.2; console.log(a); // 0.30000000000000004
Результат должен быть 0,3 вместо 0,30000000000000004 . Эта ошибка возникает из-за того, что в JavaScript числа хранятся в двоичной форме для внутреннего представления десятичных цифр. А десятичные числа нельзя точно представить в двоичной форме.
Чтобы решить указанную выше проблему, вы можете сделать что-то вроде этого:
const a = (0.1 * 10 + 0.2 * 10) / 10; console.log(a); // 0.3
Вы также можете использовать toFixed()
метод.
const a = 0.1 + 0.2; console.log(a.toFixed(2)); // 0.30
toFixed(2)
округляет десятичное число до двух десятичных значений.
const a = 9999999999999999 console.log(a); // 10000000000000000
Примечание . Целые числа имеют точность до 15 цифр.
Номер Объекты
Вы также можете создавать числа с помощью new
ключевого слова. Например,
const a = 45; // creating a number object const b = new Number(45); console.log(a); // 45 console.log(b); // 45 console.log(typeof a); // "number" console.log(typeof b); // "object"
Примечание . Рекомендуется избегать использования числовых объектов. Использование числовых объектов замедляет работу программы.
Числовые методы JavaScript
Вот список встроенных числовых методов в JavaScript.
Метод | Описание |
---|---|
isNaN () | определяет, является ли переданное значение NaN |
isFinite () | определяет, является ли переданное значение конечным числом |
isInteger () | определяет, является ли переданное значение целым числом |
isSafeInteger () | определяет, является ли переданное значение безопасным целым числом |
parseFloat (строка) | преобразует числовую строку с плавающей запятой в число с плавающей запятой |
parseInt (строка; (основание)) | преобразует числовую строку в целое число |
toExponential (фракцияЦифры) | returns a string value for a number in exponential notation |
toFixed(digits) | returns a string value for a number in fixed-point notation |
toPrecision() | returns a string value for a number to a specified precision |
toString((radix)) | returns a string value in a specified radix(base) |
valueof() | returns the numbers value |
toLocaleString() | returns a string with a language sensitive representation of a number |
For example,
// check if a is integer const a = 12; console.log(Number.isInteger(a)); // true // check if b is NaN const b = NaN; console.log(Number.isNaN(b)); // true // display upto two decimal point const d = 5.1234; console.log(d.toFixed(2)); // 5.12
JavaScript Number Properties
Here is a list of Number properties in JavaScript.
Property | Description |
---|---|
EPSILON | returns the smallest interval between two representable numbers |
MAX_SAFE_INTEGER | returns the maximum safe integer |
MAX_VALUE | returns the largest possible value |
MIN_SAFE_INTEGER | returns the minimum safe integer |
MIN_VALUE | returns the smallest possible value |
NaN | represents 'Not-a-Number' value |
NEGATIVE_INFINITY | represents negative infinity |
POSITIVE_INFINITY | представляет собой положительную бесконечность |
прототип | позволяет добавлять свойства к числовым объектам |
Например,
// largest possible value const a = Number.MAX_VALUE; console.log(a); // 1.7976931348623157e+308 // maximum safe integer const a = Number.MAX_SAFE_INTEGER; console.log(a); // 9007199254740991
Функция JavaScript Number ()
Number()
Функция используется для преобразования различных типов данных чисел. Например,
const a = '23'; // string const b = true; // boolean //converting to number const result1 = Number(a); const result2 = Number(b); console.log(result1); // 23 console.log(result2); // 1
Если вы хотите узнать больше о преобразовании чисел, посетите Преобразование типа JavaScript.