Сводка
Метод toPrecision()
возвращает строку, представляющую объект Number
с указанной точностью.
Синтаксис
numObj.toPrecision([precision])
Параметры
precision
- Необязательный параметр. Целое число, определяющее количество значащих цифр.
Возвращаемое значение
Строка, представляющая объект Number
в записи с фиксированной запятой или в экспоненциальной записи, округлённое до precision
значащих цифр. Смотрите обсуждение округления в описании метода toFixed()
, которое так же применяется и к методу toPrecision()
.
Если аргумент precision
опущен, поведение аналогично методу Number.prototype.toString()
. Если он не является целым числом, он будет округлён к ближайшему целому числу.
Выбрасываемые исключения
RangeError
- Если параметр
precison
не находится в диапазоне от 1 до 100 (включительно), будет выброшено исключениеRangeError
. Также реализации могут поддерживать большие и меньшие значения. ECMA-262 требует точности только до 21 значащей цифры.
Примеры
Пример: использование toPrecision
var numObj = 5.123456;
console.log(numObj.toPrecision()); // выведет 5.123456
console.log(numObj.toPrecision(5)); // выведет 5.1235
console.log(numObj.toPrecision(2)); // выведет 5.1
console.log(numObj.toPrecision(1)); // выведет 5numObj = 0.000123
numObj = 0.000123
console.log(numObj.toPrecision()); // logs '0.000123'
console.log(numObj.toPrecision(5)); // logs '0.00012300'
console.log(numObj.toPrecision(2)); // logs '0.00012'
console.log(numObj.toPrecision(1)); // logs '0.0001'
// обратите внимание, что в некоторых случаях значение может быть возвращено в экспоненциальной записи
console.log((1234.5).toPrecision(2)); // выведет 1.2e+3
Спецификации
Спецификация | Статус | Комментарии |
---|---|---|
ECMAScript 3-е издание. | Стандарт | Изначальное определение. Реализована в JavaScript 1.5. |
ECMAScript 5.1 (ECMA-262) Определение 'Number.prototype.toPrecision' в этой спецификации. |
Стандарт | |
ECMAScript 2015 (6th Edition, ECMA-262) Определение 'Number.prototype.toPrecision' в этой спецификации. |
Стандарт |
Совместимость с браузерами
Возможность | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|
Базовая поддержка | (Да) | (Да) | (Да) | (Да) | (Да) |
Возможность | Android | Chrome для Android | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|
Базовая поддержка | (Да) | (Да) | (Да) | (Да) | (Да) | (Да) |