数字与日期

数字

在JavaScript中,数字以双精度64位二进制格式IEEE 754实现(一个介于±2−1023和±2+1024之间的数字,或者大约为±10−308到±10+308,数字精度为53位)。整数数字在运算完毕后,其值在±(253 − 1)内 可以认为是准确的,超出此范围后,数据已无法保证准确性。除了能表示浮点数,还可以表示+Infinity(正无穷)-Infinity(负无穷)NaN(不是一个数字)

  • 十进制数

    1
    2
    3
    let a = 123456;    // 123456
    let b = 0888; // 888
    let c = 0777; // 非严格模式下当做八进制处理 511
  • 二进制数

    二进制数字语法是以0开头,后面接一个大写或小写的拉丁文字母B(即0b0B),加入0b后边的数字不是0或1,则会报语法错误。

    1
    2
    3
    4
    let FLT_SIGNBIT  = 0b10000000000000000000000000000000; // 2147483648
    let FLT_EXPONENT = 0b01111111100000000000000000000000; // 2139095040
    let FLT_MANTISSA = 0B00000000011111111111111111111111; // 8388607
    let a = 0b313242; // Uncaught SyntaxError: Invalid or unexpected token
  • 八进制数

    八进制数字语法是以0开头的,加入后面的数字不在0-7的范围内,则会被转成十进制数字。

    1
    2
    let a = 0755;    // 493
    let b = 0911; // 911

    在ES5的严格模式下禁止使用八进制语法,八进制语法并不是ES5规范的一部分,但在所有浏览器中都支持八进制语法。在ES6中使用八进制需要给数字添加前缀0o

    1
    let a = 0o10;    // 8
  • 十六进制数

    十六进制数字语法是以0开头,后接一个小写或大写的拉丁文字母X(即0x0X),如果0x后面的数字超过规定的范围,则会报语法错误:

    1
    2
    3
    let a = 0x123;    // 291
    let b = 0X456; // 1110
    let c = 0Xjhg; // Uncaught SyntaxError: Invalid or unexpected token
  • 指数

    1
    2
    3
    1E3;    // 1000
    2e6; // 2000000
    0.1e2; // 10

数字对象

内置的Number对象有一些有关数字的常量属性:

属性 描述
Number.MAX_VALUE 可表示的最大值
Number.MIN_VALUE 可表示的最小值
Number.NaN 特指“非数字”
Number.NEGATIVE_INFINITY 特指“负无穷”,在溢出时返回
Number.POSITIVE_INFINITY 特指“正无穷”,在溢出时返回
Number.EPSILON 表示1与可表示的大于的最小浮点数之间的差值
Number.MIN_SAFE_INTEGER JavaScript最小安全整数
Number.MAX_SAFE_INTEGER JavaScript最大安全整数

Number的方法:

方法 描述
Number.parseFloat() 把字符串参数解析成浮点数,和全局方法parseFloat作用一致
Number.parseInt() 把字符串参数解析成特定基数对应的整型数字,和全局方法parseInt作用一致
Number.isFinite() 判断传入的值是否为有限数字
Number.isInteger() 判断传入的值是否为整数
Number.isNaN() 判断传入的值是否为NaN
Number.isSafeInteger() 判断传入的值是否为安全整数

Number原型上的方法:

方法 描述
toExponential() 返回一个数字的指数形式字符串,如:1.23e+2
toFixed() 返回指定小数位数的表示形式
toPrecision() 返回一个指定精度的数字

日期

JavaScript中没有日期对象,但是可以使用Date对象和其提供的方法来处理日期和时间。

打赏
  • 版权声明: 本博客所有文章除特别声明外,著作权归作者所有。转载请注明出处!

扫一扫,分享到微信

微信分享二维码
  • © 2019-2021 musi

请我喝杯咖啡吧~

支付宝
微信