zoukankan      html  css  js  c++  java
  • 3.1

    3.1

      JS不区分整数值和浮点数值,所有数字均用浮点数值表示。

      JS采用IEEE的64位浮点格式表示数字。

      整数范围:-2^53--2^53。

    3.1.1

      ECMAScriptz不支持八进制直接量,但JS的某些实现可以允许采用八进制,以0开始,但是最好不用八进制

    3.1.2

      算数运算符: + - * / %

      JS支持更加复杂的算数运算符,通常作为Math对象的属性定义的函数和常量来实现。

      如:Math.pow(2,53), Math.exp(3)

      JS中算数运算在溢出(overflow),下溢(underflow)或者被0整除时,不会报错。

      当溢出时,结果为无穷大(+-Infinity)

      当下溢时,结果为0

      当被0整除时,简单的返回无穷大

      0/0, Infinity/Infinity, 负数开方或者算数运算符与无法转换为数字的操作数一起作用时,返回NaN(not a number)。

      JS预定义全局变量:Infinity和NaN,只读。

      NaN和任何值都不相等,包括他本身。

      无法用 X ==  NaN 来判断X是否为NaN,应该采用 X != X 来判断。isNaN()作用与此类似。

      isFinite()在参数不是NaN,Infinity或者-Infinity时,返回true。

      负0与正0值是相等的,只有作为除数时产生不同的Infinity(+-)。

    3.1.3

      JS中使用实数时,常常只是真实值的一个近似表示。

      JS中数字具有足够的精度,但并不精确。

      如:var x = .3 - .2;

        var y = .4 - .3;

        x == y    => flase

      任何使用二进制浮点数的编程语言都有这个问题。

      

      

  • 相关阅读:
    xgboost系列之应用xgboost的注意事项
    【pandas】pandas.DataFrame.rename()---重置索引名称
    【剑指offer】复杂链表的复制
    【剑指offer】二叉树中和为某一值的路径,C++实现
    设计模式21 访问者模式
    设计模式20 迭代器模式
    设计模式19 中介者模式
    设计模式18 观察者模式
    设计模式17 状态模式
    设计模式16 责任链模式
  • 原文地址:https://www.cnblogs.com/zawjdbb/p/6208857.html
Copyright © 2011-2022 走看看