数字类型的方法

215 阅读2分钟

1.toString()数字转字符串

所有数字方法可用于任意类型的数字(字面量、变量或表达式)

    let num = 123
    console.log(typeof num.toString())//string

2.toFixed() 方法

toFixed() 返回字符串值,它包含了指定位数小数的数字:

    let num = 123.456
    let num2 = 123.4
    let num3 = 123
    console.log(num.toFixed(2))  //123.46
    console.log(num2.toFixed(2)) //123.40
    console.log(num3.toFixed(2)) //123.00

toFixed()方法在某些特定情况下四舍五入是不准确的(例如12.555,截取两位的值是12.55)具体解决办法,在下篇文章中介绍

3.valueOf() 方法

valueOf() 以数值返回数值:

   let x = 123;
   x.valueOf();            // 从变量 x 返回 123
   (123).valueOf();        // 从文本 123 返回 123
   (100 + 23).valueOf();   // 从表达式 100 + 23 返回 123

4.Number() 返回数字,由其参数转换而来。

   let x = true;
   console.log(Number(x));        // 返回 1
   let  x = false;
   console.log(Number(x));        // 返回 0
   let x = new Date();
   console.log(Number(x));        // 返回 1635773246286
   let   x = "10"
   console.log(Number(x));        // 返回 10
   let x = "10 20"
   console.log(Number(x));        // 返回 NaN

用于日期的 Number() 方法

Number() 还可以把日期转换为数字:

    console.log(Number(new Date("2021-11-01")));    // 返回 1635724800000

上面的 Number() 方法返回 1970 年 1 月 1 日至今的毫秒数

5.parseInt() 方法

parseInt() 解析一段字符串并返回数值。允许空格。只返回首个整数数字:

    console.log(parseInt("10"));         // 返回 10
    console.log(parseInt("10.33"));      // 返回 10
    console.log(parseInt("10 20 30"));   // 返回 10
    console.log(parseInt("10 years"));   // 返回 10
    console.log(parseInt("years 10"));   // 返回 NaN

6.parseFloat() 方法

parseFloat() 解析一段字符串并返回数值。允许空格。只返回首个数字

    console.log(parseFloat("10"));        // 返回 10
    console.log(parseFloat("10.33"));     // 返回 10.33
    console.log(parseFloat("10 20 30"));  // 返回 10
    console.log(parseFloat("10 years"));  // 返回 10
    console.log(parseFloat("years 10"));  // 返回 NaN

7.toLocaleString()方法

格式化number为千分位格式

    let num = 1234567.89
    console.log(num.toLocaleString()) //1,234,567.89

参考: www.w3school.com.cn/js/js_numbe…