Number.prototype.toPrecision()
Базовый уровень Широко доступен
Эта функция хорошо зарекомендовала себя и работает на многих устройствах и в различных версиях браузеров. Она доступна в браузерах с июля 2015 года.
Метод toPrecision() объекта Number возвращает строковое представление этого числа с указанным количеством значащих цифр.
Попробуйте
function precise(x) {
return x.toPrecision(4);
}
console.log(precise(123.456));
// Expected output: "123.5"
console.log(precise(0.004));
// Expected output: "0.004000"
console.log(precise(1.23e5));
// Expected output: "1.230e+5"
Синтаксис
toPrecision() toPrecision(precision)
Параметры
-
precisionНеобязательно - Целое число, определяющее количество значащих цифр.
Возвращаемое значение
Строка, представляющая данное число, с использованием указанного количества значащих цифр. Научная нотация используется, если показатель степени больше или равен precision или меньше -6. Имеет то же поведение, что и Number.prototype.toString(), если аргумент precision опущен.
Исключения
-
RangeError - Выбрасывается, если
precisionне находится в диапазоне от1до100(включительно). -
TypeError - Выбрасывается, если этот метод вызывается для объекта, который не является
Number.
Примеры
Использование toPrecision
// This number has exponent 0, so it will never use exponential notation let num = 5.123456; console.log(num.toPrecision()); // '5.123456' console.log(num.toPrecision(5)); // '5.1235' console.log(num.toPrecision(2)); // '5.1' console.log(num.toPrecision(1)); // '5' // This number has exponent -4, so it will never use exponential notation num = 0.000123; console.log(num.toPrecision()); // '0.000123' console.log(num.toPrecision(5)); // '0.00012300' console.log(num.toPrecision(2)); // '0.00012' console.log(num.toPrecision(1)); // '0.0001' // This number has exponent 3, so it will use exponential notation if precision is less than 4 num = 1234.5; console.log(num.toPrecision(1)); // '1e+3' console.log(num.toPrecision(2)); // '1.2e+3' console.log(num.toPrecision(6)); // '1234.50' // This number has exponent -7, so it will always use exponential notation num = 0.00000012345; console.log(num.toPrecision(1)); // '1e-7' console.log(num.toPrecision(10)); // '1.234500000e-7'
Спецификации
Совместимость с браузерами
| Настольные компьютеры | Мобильные устройства | Сервер | |||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox for Android | Opera Android | Safari on iOS | Samsung Internet | WebView Android | WebView on iOS | Bun | Deno | Node.js | |
toPrecision |
1 |
12 |
1 |
7 |
2 |
18 |
4 |
10.1 |
1 |
1.0 |
4.4 |
1 |
1.0.0 |
1.0 |
0.10.0 |
См. также
© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/toPrecision