Number.prototype.toPrecision()
Сводка
Метод toPrecision()
возвращает строку, представляющую объект Number
с указанной точностью.
Синтаксис
numObj.toPrecision([precision])
Параметры
precision
-
Необязательный параметр. Целое число, определяющее количество значащих цифр.
Возвращаемое значение
Строка, представляющая объект Number
в записи с фиксированной запятой или в экспоненциальной записи, округлённое до precision
значащих цифр. Смотрите обсуждение округления в описании метода toFixed()
, которое таким же образом применяется и к методу toPrecision()
.
Если аргумент precision
опущен, поведение аналогично методу Number.prototype.toString()
. Если он не является целым числом, он будет округлён к ближайшему целому числу.
Выбрасываемые исключения
RangeError
-
Если параметр
precison
не находится в диапазоне от 1 до 100 (включительно), будет выброшено исключениеRangeError
. Также реализации могут поддерживать большие и меньшие значения. ECMA-262 требует точности только до 21 значащей цифры.
Примеры
Пример: использование toPrecision
js
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)); // выведет '5'
numObj = 0.000123;
console.log(numObj.toPrecision()); // выведет '0.000123'
console.log(numObj.toPrecision(5)); // выведет '0.00012300'
console.log(numObj.toPrecision(2)); // выведет '0.00012'
console.log(numObj.toPrecision(1)); // выведет '0.0001'
// Обратите внимание, что если заданного количества разрядов
// недостаточно для точного отображения целой части числа,
// значение может быть возвращено в экспоненциальной записи.
console.log((1234.5).toPrecision(2)); // выведет '1.2e+3'
Спецификации
Specification |
---|
ECMAScript Language Specification # sec-number.prototype.toprecision |
Совместимость с браузерами
BCD tables only load in the browser