一、如果对两个字符串相加,结果将是一个字符串的级联:
var x=“10”;
var y=“20”;
var z=x+y; //1020 字符串
数字和字符串使用+也是得到字符串的级联。
二、在/ * -数字运算中,JavaScript 会尝试将字符串转换为数字
1、
var x = “100”;
var y = “10”;
var z = x / y; // z 将是 10
2、
var x = “100”;
var y = “10”;
var z = x * y; // z 将是 1000
3、
var x = “100”;
var y = “10”;
var z = x - y; // z 将是 90
三、NaN(非数值)
属于 JavaScript 保留词,指示某个数不是合法数。NaN 是数,typeof NaN 返回 number
尝试用一个非数字字符串进行除法会得到 NaN(Not a Number)。
使用全局 JavaScript 函数 isNaN() 来确定某个值是否是数:
var x = 100 / “Apple”;
isNaN(x); // 返回 true,因为 x 不是数
1.
var x = NaN;
var y = 5;
var z = x + y; // z 将是 NaN
2.
var x = NaN;
var y = “5”;
var z = x + y; // z 将是 NaN5
四、Infinity
Infinity (或 -Infinity)是 JavaScript 在计算数时超出最大可能数范围时返回的值。
例:
var myNumber = 2;
while (myNumber != Infinity) { // 执行直到 Infinity
myNumber = myNumber * myNumber;
}
除以 0(零)也会生成 Infinity
例:
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
六、数值可以是对象
通常 JavaScript 数值是通过字面量创建的原始值:var x = 123
但是也可以通过关键词 new 定义为对象:var y = new Number(123)
typeof y 返回object
请不要创建数值对象。这样会拖慢执行速度。
new 关键词使代码复杂化,并产生某些无法预料的结果:
当使用 == 相等运算符时,相等的数看上去相等:
例:
var x = 500;
var y = new Number(500);
// (x == y) 为 true,因为 x 和 y 有相等的值
当使用 === 相等运算符后,相等的数变为不相等,因为 === 运算符需要类型和值同时相等。
JavaScript 对象无法进行比较。
W3School
“相关推荐”对你有帮助么?
-
非常没帮助
-
没帮助
-
一般
-
有帮助
-
非常有帮助
提交