JavaScript 数字

所有 JavaScript 数字均为 64 位

       JavaScript 不是类型语言。与许多其他编程语言不同,JavaScript 不定义不同类型的数字,比如整数、短、长、浮点等等。JavaScript 中的所有数字都存储为根为 10 的 64 位(8 比特),浮点数。

精度

       整数(不使用小数点或指数计数法)最多为 15 位。小数的最大位数是 17,但是浮点运算并不总是 100% 准确:

八进制和十六进制

如果前缀为 0,则 JavaScript 会把数值常量解释为八进制数,如果前缀为 0 和 "x",则解释为十六进制数。

数字属性和方法

属性:

  • MAX VALUE  ——————  它的近似值为 1.7976931348623157 x 10308
  • MIN VALUE   —————— JavaScript 中可表示的最小的数(接近 0 ,但不是负数)。它的近似值为 5 x 10-324
  • NEGATIVE INFINITIVE————Number.NEGATIVE_INFINITY 是一个特殊值,它在算术运算或函数生成一个比 JavaScript 能表示的最小负数还小的数(也就是比 -Number.MAX_VALUE 还小的数)时返回。
  • POSITIVE INFINITIVE——————Number.POSITIVE_INFINITY 是一个特殊值,它在算术运算或函数生成一个比 JavaScript 能表示的最大的数还大的数(也就是比 Number.MAX_VALUE 还大的数)时返回。
  • NaN——————NaN 属性是代表非数字值的特殊值。该属性用于指示某个值不是数字。可以把 Number 对象设置为该值,来指示其不是数字值。
  • prototype——————使您有能力向对象添加属性和方法。
  • constructor——————constructor 属性返回对创建此对象的 Boolean 函数的引用

方法:

  • toExponential()————把对象的值转换为指数计数法。NumberObject.toExponential(num)

参数

描述

num

必需。规定指数计数法中的小数位数,是 0 ~ 20 之间的值,包括 0 和 20,有些实现可以支持更大的数值范围。如果省略了该参数,将使用尽可能多的数字。

在本例中,我们将把一个数字转换为指数计数法:

Show 10,000 as an exponential notation: <script type="text/javascript"> var num = new Number(10000); document.write (num.toExponential(1)) </script>

输出:

Show 10,000 as an exponential notation: 1.0e+4


  • toFixed()toFixed() 方法可把 Number 四舍五入为指定小数位数的数字。

语法

NumberObject.toFixed(num)

  • toPrecision()————toPrecision() 方法可在对象的值超出指定位数时将其转换为指数计数法。
  • toString()————toString() 方法可把一个 Number 对象转换为一个字符串,并返回结果。
  • valueOf()————返回一个 Number 对象的基本数字值。