12种最常见的JavaScript数字方法

共 4789字,需浏览 10分钟

 ·

2020-12-27 13:38

英文 | https://medium.com/swlh/12-most-common-javascript-number-methods-4dfeedb7f2af
翻译 | web前端开发 (ID:web_qdkf)

有许多JavaScript Number方法可以用于处理数字值。这些数字格式支持整数,浮点数,十进制,十六进制和符号。
在这里我整理了一些方法可以帮助你提升开发效率,同时使操作和修改数值变得更加容易。具体方法如下:

1、 Number()

该Number()方法可以将字符串转换为数字。
// Example 1let x = '10'let num = Number(x)console.log(num) // Output: 10console.log(num * 9) // Output: 90// Example 2let x = truelet num = Number(x)console.log(num) // Output: 1console.log(num + 9) // Output: 10//Example 3let x = falselet num = Number(x)console.log(num) // Output: 0console.log(num + 9) // Output: 9
在上面的示例中,Number(value)方法用于将字符串转换x为整数并对数字值执行运算。设置x为true返回1并false返回0。

2、 parseInt()

parseInt()与number()方法非常相似,将parseInt()字符串格式化为整数。
// Example 1let x = '10.99'let num = parseInt(x)console.log(num) // Output: 10// Example 2let x = '7 days'let num = parseInt(x)console.log(num) // Output: 7// Example 3let x = 'day 7'let num = parseInt(x)console.log(num) // Output: NaN
该parseInt(value)方法采用一个字符串x,一个十进制数字并返回一个整数。它返回第一个整数7,值为“ 7 days”。如果我们将值更改x为“第7天”,则它将返回,NaN因为该方法找不到数字值。

3、parseFloat()

该parseFloat()方法解析一个字符串值,并返回带有其十进制值的数字。
// Example 1let x = '10.99'let num = parseFloat(x)console.log(num) // Output: 10.99// Example 2let x = '2.49 3.99'let num = parseFloat(x)console.log(num) // Output: 2// Example 3let x = 'day 7'let num = parseFloat(x)console.log(num) // Output: NaN
与相似parseInt(),parseFloat()检查以查找字符串中的第一个字符是一个数字,如果是,它将解析该字符串并将其返回为带有十进制值的数字。设置parseInt()和parseFloat()方法分开的主要原因是parseFloat()在解析字符串之后,返回带有其十进制值的数字,而parseInt()仅返回整数。

4、 toString()

该toString()方法将数值转换为字符串。
// Example 1let x = 10let num = x.toString()console.log(num) // Output: '10'// Example 2let x = 10let num = x.toString(2)console.log(num) // Output: 1010
将数字2作为参数添加到toString()方法中,将返回数字的二进制值。

5、 toExponential()

顾名思义,toExponential()将数字转换为字符串并以指数格式返回。
// Example 1let x = 456.789let num = x.toExponential()console.log(num) // Output: 4.56789e+2// Example 2let x = 456.789let num = x.toExponential(2)console.log(num) // Output: 4.57e+2
带2位数字的参数,返回带两位十进制数字的值。
6、toFixed()
toFixed()方法将数字四舍五入到最接近的最高或最低定点符号。它带有一个参数,该参数表示应在小数点后显示位数。
// Example 1var num = 4.56789;console.log(num.toFixed()) // Output : 5// Example 2var num = 4.56789;
console.log(num.toFixed(2)) // Output : 4.57
在上面的示例中,该toFixed(digits)方法使用小数点后的2位数字格式化数字。如果调用toFixed()不带参数的方法,则它将返回一个四舍五入的整数。

7、 toPrecision()

toPrecision()返回具有特定长度的数值。它接受一个表示长度的参数。如果给出的长度没有特定长度,则该方法将按原样返回数字。
// Example 1var num = 456.789;
console.log(num.toPrecision()) // Output : 456.789// Example 2var num = 456.789;
console.log(num.toPrecision(2)) // Output : 4.6

8、valueOf()

该valueOf() 方法用于返回Number你正在调用它的对象的原始值。JavaScript中的原始类型是数字,字符串,bigint,符号,未定义,null和布尔值。
let x = 45let num = x.valueOf()console.log(num) // Output: 45console.log(typeof num); // Output: Number

9、toLocaleString()

该toLocaleString() 方法使用本地语言格式转换数字并将其作为字符串返回。它带有两个参数locales和options,它们定义了要使用的转换所用的语言以及该函数的行为。
obj.toLocaleString([locales[, options]])
let num = 226537.883;//US Englishconsole.log(num.toLocaleString('en-US')); //Output: 226,537.883// Romanian (Romania)console.log(num.toLocaleString('ro-RO')); //Output: 226.537,883// Standard French (especially in France)console.log(num.toLocaleString('fr-FR')); //Output: 226 537,883

10、 isInteger()

isInteger() 检查给定值是否为整数,并返回布尔值。
//Example 1let x = 10let num = Number.isInteger(x)console.log(num) // Output: true//Example 2let x = 10.99let num = Number.isInteger(x)console.log(num) // Output: false//Example 3let x = "10"let num = Number.isInteger(x)console.log(num) // Output: false
在上面的示例中,设置x为10返回布尔值true;当我们将其更改为10.99它的值时,它将返回false;因为该值具有十进制数字,这意味着它不是整数。同样,当我们用引号将值引起来时,该方法返回false;因为该值是一个字符串。

11、 isFinite()

isFinite() 检查给定值是否为有限值,并返回布尔值。
//Example 1let x = 10let num = Number.isFinite(x)console.log(num) // Output: true//Example 2let x = -10.99let num = Number.isFinite(x)console.log(num) // Output: true//Example 3let x = "10"let num = Number.isFinite(x)console.log(num) // Output: false
将x设置为10与 -10.99时,inFinite()方法返回true,因为它们是有限数。 当我们将值更改为字符串时,则返回false。

12、 isSafeInteger()

isSafeInteger()检查给定值是否为安全整数,并返回布尔值。当所有整数都在(2 ^ 53–1)到-(2 ^ 53–1)之间时,该整数被视为安全整数。
Number.isSafeInteger(220//输出:true Number.isSafeInteger(-220//输出:true Number.isSafeInteger(2.2//输出:false Number.isSafeInteger(978678367894123469469410320213//输出:false
以上这些就是我要跟大家分享的12种JavaScript数字格式,可以帮助你操纵数字值并提高开发效率。

本文完〜

浏览 9
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报