Метод toPrecision округляет число до заданного знака. В отличие от Math.round округление можно проводить не только в дробной части.
Параметром метода указывается сколько цифр должно остаться в числе. Остальные цифры будут отброшены. Последнее оставшееся число будет округлено по правилам математического округления.
Если указанное количество знаков не достижимо обрезанием десятичной части - переводит число в экспоненциальную форму.
Экспоненциальная форма - это числа вида 1.2e+3. Чтобы преобразовать в нормальную форму нужно сделать так: 1.2e+3 = 1.2 * 10*3 = 1.2 * 1000 = 1200.
Если параметр пуст, то будет возращено исходное число.
Синтаксис
число.toPrecision(длина);
Пример
В данном примере число 678.19324 с помощью toPrecision приведется к 4 цифрам, причем, так как после 1 стоит цифра 9, то по правилам математики единица преобразуется к двойке:
let num = 678.19324;
console.log(num.toPrecision(4));
Результат выполнения кода:
678.2
Пример
В данном примере число должно сократиться до двух знаков и будет отброшена не только дробная часть, но и целая. Поэтому число переведется в экспоненциальную форму:
let num = 678.19324;
console.log(num.toPrecision(2));
Результат выполнения кода:
6.8e+2
Пример
В данном примере число 12 приводится к 3 цифрам. Так как число целое, то в дробной части появится 0:
let num = 12;
console.log(num.toPrecision(3));
Результат выполнения кода:
12.0
Пример
Давайте теперь приведем число 12 к четырем цифрам. В дробной части появятся два 0:
let num = 12;
console.log(num.toPrecision(4));
Результат выполнения кода:
12.00
Пример
Давайте теперь приведем число 12.1 к пяти цифрам:
let num = 12.1;
console.log(num.toPrecision(5));
Результат выполнения кода:
12.100
Смотрите также
-
метод toFixed,
который также выполняет округление числа до заданного знака -
методы Math.round,
Math.ceil,
Math.floor,
которые выполняют округление числа до целого