二十五岁时我们都一样愚蠢、多愁善感,喜欢故弄玄虚,可如果不那样的话,五十岁时也就不会如此明智。
标题:JavaScript数字方法
数字方法和属性
原始值 (像 3.14 或者 2014), 没有属性和方法 (因为它们不是对象).
但对于JavaScript,方法和属性也能应用于原始值,因为执行方法和属性时,JavaScript将原始值作为对象对待。
toString() 方法
toString() 作为字符串返回数字.
所有数字方法都可以用于任何类型的数字 (常量, 变量, 或者表达式):
var x = 123; x.toString(); // returns 123 from variable x (123).toString(); // returns 123 from literal 123 (100 + 23).toString(); // returns 123 from expression 100 + 23
toExponential() 方法
toExponential() 方法返回一个字符串, 用指数符号舍入和写入.
参数定义小数点后面的字符数:
var x = 9.656; x.toExponential(2); // returns 9.66e+0 x.toExponential(4); // returns 9.6560e+0 x.toExponential(6); // returns 9.656000e+0参数可选。如果你不指定它,JavaScript舍入数字.
toFixed() 方法
toFixed() 返回一个字符串, 用数字表示一个指定的小数:
var x = 9.656; x.toFixed(0); // returns 10 x.toFixed(2); // returns 9.66 x.toFixed(4); // returns 9.6560 x.toFixed(6); // returns 9.656000toFixed(2) 更适合使用在货币计量上.
toPrecision() 方法
toPrecision() 返回具有指定长度的数字的字符串:
var x = 9.656; x.toPrecision(); // returns 9.656 x.toPrecision(2); // returns 9.7 x.toPrecision(4); // returns 9.656 x.toPrecision(6); // returns 9.65600
valueOf() 方法
valueOf() 将返回数字的值.
var x = 123; x.valueOf(); // returns 123 from variable x (123).valueOf(); // returns 123 from literal 123 (100 + 23).valueOf(); // returns 123 from expression 100 + 23在JavaScript中,一个数可以是原始值 (typeof = number) 或者一个对象(typeof = object).
valueOf() 方法是在内部使用JavaScript将数字对象转换为原始值.
没有理由在你的代码中使用它.
所有的JavaScript数据类型有valueOf()和toString()方法.
变量转换为数字
有3个JavaScript方法,可以用来转换变量为数字:
- Number() 方法
- parseInt() 方法
- parseFloat() 方法
这些方法不是数字方法,而是全局JavaScript方法.
全局方法
JavaScript的全局方法可用于所有的JavaScript的数据类型.
这些都是和数字一起使用的相关方法:
方法 描述 Number() 从它的参数转换为一个数字. parseFloat() 分析其参数并返回一个浮点数 parseInt() 分析其参数并返回一个整数
Number() 方法
Number() 可以将JavaScript变量转换为数字:
x = true; Number(x); // returns 1 x = false; Number(x); // returns 0 x = new Date(); Number(x); // returns 1404568027739 x = "10" Number(x); // returns 10 x = "10 20" Number(x); // returns NaN用在 Date()上, Number() 方法返回自1970.1.1的毫秒数.
parseInt() 方法
parseInt() 转换一个字符串并返回整个数字. 允许有空格. 只返回第一个数字:
parseInt("10"); // returns 10 parseInt("10.33"); // returns 10 parseInt("10 20 30"); // returns 10 parseInt("10 years"); // returns 10 parseInt("years 10"); // returns NaN如果数字不能转换, 返回 NaN (Not a Number).
数字属性
属性 描述 MAX_VALUE 返回最大数字 MIN_VALUE 返回最小数字 NEGATIVE_INFINITY 描述正无穷大(当溢出时返回) NaN 表示一个 "Not-a-Number" 值 POSITIVE_INFINITY 表示无穷大(当溢出时返回) var x = Number.MAX_VALUE;数字属性属于被称为数字对象封装类的Number.
这些属性只能访问Number.max_value
使用 myNumber.MAX_VALUE, 这里myNumber可以是一个变量,表达式,或一个值,将返回 undefined:
var x = 6; var y = x.MAX_VALUE; // y becomes undefined
完整的JavaScript数字参考
一个完整的参考, 请访问我们的完整 JavaScript Number 参考.
参考包含所有数字属性和方法的说明和示例.