JavaScript Number toPrecision() 方法

JavaScript toPrecision() 语法

toPrecision() 是 JavaScript Number 对象的一个方法,它会以字符串的形式来返回某个数字的 “指定精度表示”。

语法:

num.toPrecision(n)

说明:

toPrecision() 方法接收单个参数。

  • n(可选):表示保留 n 位有效数字。如果 n 省略,其行为等同于 toString() 方法。

JavaScript toPrecision() 摘要

属于 JavaScript Number 对象
使用频率
官方文档 查看
MDN 查看

JavaScript toPrecision() 示例

接下来,我们通过几个简单的例子来讲解 JavaScript toPrecision() 是如何使用的。

示例 1:toPrecision() 基本用法

const num = 3.1415926;
const result = num.toPrecision(4);

console.log(result);
console.log(typeof(result));

运行结果如下。

3.142
string

分析:

num.toPrecision(4) 表示保留 4 位有效数字,并且会对最后一位有效数字的下一位数字四舍五入。对于一个数值来说,从左边数第一个不为 0 的数,一直到最后一位数字,都属于有效数字。

示例 2:toPrecision() 的更多使用

// 处理小数(常规用法)
const smallNum = 0.00031415926;
console.log(smallNum.toPrecision(2));    // 0.00031

// 补零对齐(当精度 > 实际位数)
const shortNum = 1.5;
console.log(shortNum.toPrecision(4));    // 1.500 (后位补零)

// 自动转科学计数法
const largeNum = 5678;
console.log(largeNum.toPrecision(2));    // 5.7e+3 (整数位不够放,自动转指数)
console.log(largeNum.toPrecision(1));    // 6e+3   (四舍五入)

运行结果如下。

0.00031
1.500
5.7e+3
6e+3

toPrecision() 与 toFixed() 的区别

toPrecision() 与 toFixed() 这两个方法很相似,它们之间的区别在于:toPrecision(n) 表示保留 n 位有效数字,toFixed(n) 表示保留 n 位小数。

示例 3:toPrecision() vs toFixed()

const num = 314.15926;

const result1 = num.toFixed(3);
console.log(result1);

const result2 = num.toPrecision(3);
console.log(result2);

运行结果如下。

314.159
314

上一篇: toExponential()

下一篇: toString()

给站长反馈

绿叶网正在不断完善中,小伙伴们如果发现任何问题,还望多多给站长反馈,谢谢!

邮箱:lvyenet@vip.qq.com

「绿叶网」服务号
绿叶网服务号放大
关注服务号,微信也能看教程。
绿叶网服务号