Number¶
a = 1;
a = 1.23;
a = 1E6;
// восьмиричная форма записи
a = 045;
// шестнадцатеричная форма
a = 0x45;
a = 10 % 3;
// 2, остаток от целочисленного деления
a++;
a--;
++a;
--a;
a += 5;
a -= 5;
a /= 5;
0.1 + 0.2 == 0.3;
// false
1 == 1.0;
// true
1/0;
// Infinity - бесконечность
-1/0;
// -Infinity - бесконечность
Note
EcmaScript6
// двоичное число
let a = 0b00001111;
const binaryZero = 0b0;
const binaryOne = 0b1;
const binary255 = 0b11111111;
const binaryLong = 0b111101011101101;
// восьмиричное
let b = 0o17;
0x767 === 503
Number¶
- class
Number
¶ Число, с типом float64
Наследник
Object
Number(10); // 10 Number("42.23"); // 42.23 Number("71oshi"); // Nan
-
EPSILON
¶ Расчетная погрешность при сравнений чисел с плавающей запятой
-
NaN
¶ Нечисло
-
NEGATIVE_INFINITY
¶ Отрицательная бесконечность
-
MIN_VALUE
¶ Наименьшее представимое число
-
MAX_SAFE_INTEGER
¶ Note
ECMAScript6
-
MAX_VALUE
¶ Наибольшее представимое число
-
MIN_SAFE_INTEGER
¶ Note
ECMAScript6
-
POSITIVE_INFINITY
¶ Положительная бесконечность
-
isFinite
(number)¶ Значение является конечным числом
Note
ECMAScript6
Number.isFinite(10); // true Number.isFinite(Nan); // false Number.isFinite(null); // false Number.isFinite([]); // false
-
isInteger
(number)¶ Переменная - целое число
Note
ECMAScript6
Number.isInteger(42); // true Number.isInteger(42.000); // true Number.isInteger(42.3); // false
// полифил if (!Number.isInteger){ Number.isInteger = function(num){ return ( typeof num === 'number' && num % 1 == 0 ); } }
-
isNan
(number)¶ Переменная Nan
New in version ECMAScript6.
Number.isNaN(NaN) === true Number.isNaN(null) === false Number.isNaN(undefined) === false Number.isNaN({}) === false Number.isNaN(0/0) === false Number.isNaN('hello') === false
-
isSafeInteger
(number)¶ Note
ECMAScript6
Number.isSafeInteger(Number.MAX_SAFE_INTEGER); // true Number.isSafeInteger(Math.pow(2, 53)); // false Number.isSafeInteger(Math.pow(2, 53) - 1); // true
// полифил if (!Number.isSafeInteger){ Number.isSafeInteger = function(num){ return ( Number.isInteger(num) && Math.abs(num) <= Number.MAX_SAFE_INTEGER ); } }
-
toExponential
([fractionDigits])¶ Возвращает строку, число в экспоненциальной форме
fractionDigits - количество чисел после запятой (0 - 20)
var x = 123456789; x.toExponential(); // '1.23456789e+8' x.toExponential(1); // '1.2e+8' x.toExponential(2); // '1.23e+8' x.toExponential(3); // '1.235e+8'
-
toFixed
([[fractionDigits]])¶ Возвращает строку, с определенным количеством знаков после запятой (0 - 20)
var y = 43.81327; y.toFixed(); // '44' y.toFixed(1); // '43.8' y.toFixed(2); // '43.81' y.toFixed(3); // '43.813'
-
toPrecission
([precission])¶ Возвращает строку, число в десятичной форме
precission - количество чисел (1 - 21)
var n = 12345.6789; n.toPrecission(6); // '12345.7' n.toPrecission(4); // '1.235e+4'
-
toString
([radx=10])¶ Возвращает строковое представление числа
radx - система исчисления (2-36)
var n = 7432; n.toString(); // '7432' n.toString(2); // '1110100001000'
-