JS数值

作者: YM雨蒙 | 来源:发表于2017-08-25 16:10 被阅读17次

    数值

    • 100 整型
    • 3.14 浮点型
    • 3.14e7 科学计数法
    • 0xfa1b 16进制

    在数值中除了加减乘除求余外,还有一些四舍五入,绝对值等在Js中是怎样运算的呢?我们来看一下

    先看一个问题?

    如何获取一个大于等于0且小于等于9的随机整数?

    Math.floor(Math.random()*10)
    

    下面是一些数学数值方法

    绝对值

    • Math.abs(x)
    Math.abs(5)   // 5
    Math.abs(-5)  // 5
    

    四舍五入

    • Math.round(x)
    Math.round(1.1)   // 1
    Math.round(1.9)   // 2
    

    向上取整

    • Math.ceil(x)
    Math.ceil(1.1)   // 2
    Math.ceil(1.9)   // 2
    

    向下取整

    • Math.floor(x)
    Math.floor(1.1)   // 1
    Math.floor(1.9)   // 1
    

    获取最大的值

    • Math.max([value1[,value2[,...]]])
    Math.max(1,2)      // 2
    Math.max(-1,-2,-3) // -1
    

    获取最小的值

    • Math.min([value1[,value2[,...]]])
    Math.min(1,2)      // 1
    Math.min(-1,-2,-3) // -3
    

    随机数

    • Math.random()
      • 0=<随机数<1
    Math.random()  // 大于等于0且小于1的随机数
    

    其他的

    求值方法

    下面看几个实际应用,我们应该怎么用JS解决

    用户输入小数点怎么处理

    parseInt(string,radit)

    • 输入一个字符串
    • radit进制
    parseInt('1.1')    // 1  字符串转换为数值
    parseInt('1.9')    // 1
    parseInt('1b2.4')  // 1   非数字后面会忽略
    parseInt('www')    // NaN  不能识别
    
    如何保留小数点

    从上图我们可以看出,如果继续使用parseInt(string)肯定是不行的,它会舍去小数点,那我们应该用什么呢?

    parseFloat(string)

    • 输出浮点型
    parseFloat('100.1')  // 100.1
    parseFloat('12.4b5') // 12.4
    parseFloat('www')    // NaN
    

    对于上面的需求,我们会有一些疑惑,像12.4b5这样的数值,肯定是用户输入错误,那我们怎么样识别出来它不是数值呢?

    Number(value)

    Number('100.1')    // 100.1 转换为数值
    Number('12.4b5')   // NaN 一个不能识别,就不能识别了
    Number('www')      // NaN
    
    区别 保留两位小数点

    上面我们只需要两个小数点就可以了,该怎么做呢?

    num.toFixed(digits)

    • digits保留几位小数点?
    (100.123).toFixed(2)   //  "100.12"
    (100.123).toFixed(0)   //  "100"
    

    相关文章

      网友评论

        本文标题:JS数值

        本文链接:https://www.haomeiwen.com/subject/kzwudxtx.html