Метод toPrecision в JavaScript
Метод 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