JS——数字
数字类型:
- 书写数值时带不带小数点均可
- 可以使用科学计数法来写超大或超小的数值
- 数值使用以双精度浮点数来存储,根据国际IEEE754标准
- 整数会被精确到15位,小数最大数17位,0.后17位
- 如果数字和字符串相加,那么会得到一个字符串的拼接。
- 除了加法以外,其他运算符都会尝试将字符串更改为数字。
- 数字属性属于number的JavaScript数字对象包装器,使用属性时
创建:
var x = 123;
var y = new Number(123);
// typeof x 返回 number
// typeof y 返回 object
科学计数法
var x = 123e5; // 12300000
var y = 123e-5; // 0.00123
除了+以外,都会将字符串更改为数字。
var x = "100";
var y = "10";
var z = x / y; // z 将是 10
var x = "100";
var y = "10";
var z = x * y; // z 将是 1000
var x = "100";
var y = "10";
var z = x - y; // z 将是 90
var x = "100";
var y = "10";
var z = x + y; // z 不会是 110(而是 10010)
非数值NaN:
- 指示某个数不是合法数
- 如果是用字符串进行运算那么是可以的。
- 如果在运算中使用NaN,那么结果也将是NaN
- typeof NaN返回的是number
var x = 100 / "Apple"; // x 将是 NaN(Not a Number)
使用NaN来进行运算。
var x = NaN;
var y = 5;
var z = x + y; // z 将是 NaN
Infinity:
- 在计算数时超出最大可能数范围时返回的值。
- 除以0时会出现。
- typeOf Infinity返回number
var x = 2 / 0; // x 将是 Infinity
var y = -2 / 0; // y 将是 -Infinity
方法:
-
toString(更改进制)
var myNumber = 128;
myNumber.toString(16); // 返回 80
myNumber.toString(8); // 返回 200
myNumber.toString(2); // 返回 10000000
-
toFixed(四舍五入)
返回的是字符串,并进行四舍五入。非常适合处理金钱。
var x = 9.656;
x.toFixed(0); // 返回 10
x.toFixed(2); // 返回 9.66
x.toFixed(4); // 返回 9.6560
x.toFixed(6); // 返回 9.656000

浙公网安备 33010602011771号