布尔操作符, 布尔操作符在一门编程语言中的重要性非常重要, 如果没有测试两个值关系的能力, 那么 if...else 和循环之类的语句就没有用武之地, 布尔类型有三个: 非 NOT, 与 AND, 或 OR.
逻辑非逻辑非操作符由一个感叹号! 表示, 可以应用于 ECMAScript 中的任何值. 无论这个值时什么数据类型. 这个操作符都会返回一个布尔值. 逻辑非操作符首先将它的操作数转为一个布尔值, 然后在对其求反.
逻辑与逻辑与操作符由两个和号 (&&) 表示, 有两个操作数 var = true && true; 值: true
逻辑与操作属于短路操作, 即如果第一个操作数能决定结果, 那么就不会再对第二个操作数求值. 对于逻辑与操作而言, 如果第一个操作数是 false, 则无论第二个操作数是什么值, 结果都不再可能是 true 了.
逻辑与操作符的真值: 只有两个操作数是 ture 时值为 ture;
逻辑或逻辑或操作符由两个竖线符合 (||) 表示, 有两个操作数
逻辑或的真值表: 只有两个操作数都是 false 时才能是 false 其他都为真.
与逻辑与操作符相似, 逻辑或操作符也是短路操作符, 也就是第一个操作数的求值结果为 ture 时结果为 ture, 就不会有第二个操作数求值了.
乘性操作符 ECMAScript 定义了 3 个乘性操作符: 乘法, 除法, 和求模.
乘法乘法操作符由一个星号 (*) 表示
除法除法操作符由一个斜线符号 (/) 表示
求模求模 (余数) 操作符由一个百分号 (%) 表示.
加性操作符有: 加法和减法
如果有一个操作数是 NaN, 则结果是 NaN;
如果是 Infinity 加 Infinity, 则结果是 Infinity;
如果是 - Infinity 加 - Infinity, 则结果是 - Infinity;
如果是 Infinity 加 - Infinity, 则结果是 NaN;
如果是 + 0 加 + 0, 则结果是 + 0;
如果是0 加0, 则结果是0;
如果是 + 0 加0, 则结果是 + 0.
不过, 如果有一个操作数是字符串, 那么就要应用如下规则:
如果两个操作数都是字符串, 则将第二个操作数与第一个操作数拼接起来;
如果只有一个操作数是字符串, 则将另一个操作数转换为字符串, 然后再将两个字符串拼接
起来.
来源: http://www.qdfuns.com/note/49226/5a0255d40a895c32042fd5e8c18c817b.html