Метод toPrecision()
вертає рядкове відображення об'єкта Number
з вказаною точністю.
Синтаксис
numObj.toPrecision([precision])
Параметри
precision
Optional- Ціле число, що вказує кількість значущих цифр.
Значення, що повертається
Рядок, що відображає об'єкт Number
у форматі з нерухомою крапкою або експоненціальному форматі, округлений до кількості значущих цифр precision
. Дивіться обговорення округлення у описі методу Number.prototype.toFixed()
, яке також застосовується в методі toPrecision()
.
Якщо аргумент precision
не вказаний, метод поводиться як Number.prototype.toString()
. Якщо аргумент precision
не є цілочисельним значенням, воно округлюється до найближчого цілого числа.
Винятки
RangeError
- Якщо значення
precision
не знаходиться в діапазоні між1
та100
(включно), викидаєтьсяRangeError
. Реалізаціям дозволено підтримувати також більші та менші значення. ECMA-262 лише вимагає точності до 21 значущої цифри.
Приклади
Використання toPrecision
let 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'
Специфікації
Специфікація |
---|
ECMAScript (ECMA-262) The definition of 'Number.prototype.toPrecision' in that specification. |
Сумісність з веб-переглядачами
BCD tables only load in the browser
The compatibility table in this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.