js中的数字

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js中的数字相关的知识,希望对你有一定的参考价值。

参考技术A     /*  

    1.js中只有一种数据类型

    2.js中的整数会被精确到15位(如果不使用科学计数法)

    3.小数的最大位是17位

    */

    var x = 10;

    var y = 20;

    var z = "The result is: " + x + y;

    console.log('结果为',z)//The result is: 1020

    var a =0.1 + 0.2

    var b =0.3

    console.log('浮点数的值',a,a == b) //0.30000000000000004 false

    /*  

    js中数字相关的方法

    */

    /*  

    返回字符串

    */

    toString()

    /*  

    返回指定位数的字符串值

    不会改变原来数字

    */

    var x = 9.656;

    let x0 = x.toFixed(0);           // 返回 10

    let x2 = x.toFixed(2);           // 返回 9.66

    console.log('toFixed',x,x0,x2)   //9.656 10 9.66

    /*  

    返回指定长度的字符串值

    不改变原来的数字

    */

    var x = 9.656;

    let xT0 = x.toPrecision();        // 返回 9.656

    let xT2 = x.toPrecision(2);       // 返回 9.7

    console.log('toPrecision',x,xT0,xT2)   //9.656 9.656 9.7

    /*  

    以数值返回数值

    */

    // valueOf()

    /*  

    将js变量转换为数值

    无法转换为数字返回 NaN

    */

    let an = true

    let ar = Number(an)

    console.log('Number',ar)

    /*  

    解析一段字符串返回数字

    允许空格。只返回首个数字:

    */

    parseInt("10");         // 返回 10

    parseInt("10.33");      // 返回 10

    parseInt("10 20 30");   // 返回 10

    parseInt("10 years");   // 返回 10

    parseInt("years 10");   // 返回 NaN

    /*  

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

    */

    parseFloat("10");        // 返回 10

    parseFloat("10.33");     // 返回 10.33

    parseFloat("10 20 30");  // 返回 10

    parseFloat("10 years");  // 返回 10

    parseFloat("years 10");  // 返回 NaN

js删除字符串中的数字

比如 var a = ",1,2,3,4,5,6,7,8,9,10,11,12,13"
我现在想删除这组数字中的,10 或者,12
请问怎么破~~~~用js处理

参考技术A 正则方式:
var a = ",1,2,3,4,5,6,7,8,9,10,11,12,13";
var r = /,1(?=,)|,1$/g; //替换其他数字需要把两个数字都改,如 var r = /,3(?=,)|,3$/g;
var b = a.replace(r,"");

split方式:
var a = ",1,2,3,4,5,6,7,8,9,10,11,12,13";
var r = a.split(",");
var b="";
for(var i=0;i<r.length;i++)
b += r[i] == "1" ? "" : "," + r[i]; //可修改成其他数字
参考技术B 用正则将10或12及逗号替换为空就行了追问

如果删除 1 后面的10 11 12 13 这四个两位数 就会变成0 1 2 3

参考技术C 如:

var a = ",1,2,3,4,5,6,7,8,9,10,11,12,13";
re=/,10/g
b=a.replace(re,"");
a=b本回答被提问者采纳
参考技术D a.replace('10,','') 第5个回答  2013-02-18 不明白你最终的目的
如果只是单单实现这个功能
那重新定义一下就行了啊追问

比如var a = ",1,2,3,4,5,6,7,8,9,10,11,12,13"
如果我用 split() 方法删除数字1 那么整个字符串就会成 ,,2,3,4,5,6,7,8,9,0,1,2,3
请问如果避免这种情况发生

split

追答

你可以删除1,
就是1+逗号
那么像11这样的就不会被删除了啊

以上是关于js中的数字的主要内容,如果未能解决你的问题,请参考以下文章

如何用js中的单个字符替换单个数字和两位数字? [复制]

JS中的猜数字游戏

sequelize.js 中的字母数字 ID

JS限制数字中的小数位数[重复]

js 截取或者替换字符串中的数字实现方法

JS中的输入prompt()