js中,调用number()主要有两种方式,一是作为一个 function 将任意类型的数据转换成数值,二是作为一个类,通过new 生成一个数值对象。
其中第一种方式更常用。
用法一:functionnumber(value)
将一个任意类型的数据转换成数值,无法转换的则返回 nan,转换规则类似于类型隐式转换,与 parsefloat 略有差异。
转换规则如下:
值 value结果 result
undefined nan
null 0
false 0
true 1
number 原样输出
string 忽略前后空格,碰到第一个非数字字符为止,空字符串返回 0
object 调用内部 toprimitive(value, number),如果是 date 对象,返回从 1970年1月1日至date的毫秒数
用法二:constructornew number(num)
作为一个构造器,生成一个 number 实例, wraps num (after converting it to a number).
如:
> typeof new number(3)'object'
既然是对象,肯定有相关的属性和方法,number也不例外。
属性 propertiesnumber.max_value 表示的最大正数值 > number.max_value 1.7976931348623157e+308
number.min_value 表示的最小正数值> number.min_value5e-324
number.nan 与全局 nan 等同number.negative_infinity 与 -infinity 等同number.positive_infinity 与 infinity 等同方法 methods所有原生的数值相关函数均被保存在对象原型( number.prototype )里,可以直接调用。
number.prototype.tofixed(fractiondigits?)> 0.0000003.tofixed(10)'0.0000003000'
number.prototype.toprecision(precision?)> 1234..toprecision(3)'1.23e+3'
number.prototype.tostring(radix?)> 15..tostring(2)'1111'> 65535..tostring(16)'ffff'
number.prototype.toexponential(fractiondigits?)推荐教程:《js教程》
以上就是javascript中number()方法的两种用法的详细内容。