向变量赋值,并把它们相加:
var x = 7;// 向 x 赋值 5var y = 8;// 向 y 赋值 2var z = x + y;// 向 z (x + y) 赋值 7
赋值运算符(=)把值赋给变量。
var x = 15;
加法运算符(+)对数字相加:
var x = 7;var y = 8;var z = x + y;
乘法运算符(*)对数字相乘:
var x = 7;var y = 8;var z = x * y;
赋值运算符向 JavaScript 变量赋值。
运算符 | 例子 | 等同于 |
---|---|---|
= | x = y | x = y |
+= | x += y | x = x + y |
-= | x -= y | x = x - y |
*= | x *= y | x = x * y |
/= | x /= y | x = x / y |
%= | x %= y | x = x % y |
加法赋值运算符(+=)向变量添加一个值。
var x = 7;x += 8;
注释:JS 赋值这一章中完整描述了赋值运算符。
+ 运算符也可用于对字符串进行相加(concatenate,级联)。
txt1 = "Bill";txt2 = "Gates";txt3 = txt1 + " " + txt2;
txt3 的结果将是:
Bill Gates
+= 赋值运算符也可用于相加(级联)字符串:
txt1 = "Hello ";txt1 += "Kitty!";
txt1 的结果将是:
Hello Kitty!
提示:在用于字符串时,+ 运算符被称为级联运算符。
相加两个数字,将返回和,但对一个数字和一个字符串相加将返回一个字符串:
x = 7 + 8;y = "7" + 8;z = "Hello" + 7;
x、y 和 z 的结果将是:
1578Hello7
提示:如果您对数字和字符串相加,结果将是字符串!
位运算符处理 32 位数。
该运算中的任何数值运算数都会被转换为 32 位的数。结果会被转换回 JavaScript 数。
运算符 | 描述 | 例子 | 等同于 | 结果 | 十进制 |
---|---|---|---|---|---|
& | 与 | 5 & 1 | 0101 & 0001 | 0001 | 1 |
| | 或 | 5 | 1 | 0101 | 0001 | 0101 | 5 |
~ | 非 | ~ 5 | ~0101 | 1010 | 10 |
^ | 异或 | 5 ^ 1 | 0101 ^ 0001 | 0100 | 4 |
<< | 零填充左位移 | 5 << 1 | 0101 << 1 | 1010 | 10 |
>> | 有符号右位移 | 5 >> 1 | 0101 >> 1 | 0010 | 2 |
>>> | 零填充右位移 | 5 >>> 1 | 0101 >>> 1 | 0010 | 2 |
上例使用 4 位无符号的例子。但是 JavaScript 使用 32 位有符号数。
因此,在 JavaScript 中,~ 5 不会返回 10,而是返回 -6。
~00000000000000000000000000000101 将返回 11111111111111111111111111111010。
注释:我们将在 JS 位运算这一章为您详解位运算符。
如需更多有关 JavaScript 运算符的知识,请阅读 JavaScript 高级教程中的相关内容: