[b]JavaScript 运算符主要包括:[/b]
[list=1]
[*][url=http://www.1sucai.cn/article/56342.htm#arithmetic]算术运算符[/url][/*]
[*][url=http://www.1sucai.cn/article/56342.htm#assign]赋值运算符[/url][/*]
[*][url=http://www.1sucai.cn/article/56342.htm#compare]比较运算符[/url][/*]
[*][url=http://www.1sucai.cn/article/56342.htm#ternary]三元运算符[/url][/*]
[*][url=http://www.1sucai.cn/article/56342.htm#logic]逻辑运算符[/url][/*]
[*][url=http://www.1sucai.cn/article/56342.htm#concatenation]字符串连接运算符[/url][/*]
[/list]
[b]
算术运算符[/b]
| 运算符 |
说明 |
例子 |
运算结果 |
| + |
加 |
y = 2+1 |
y = 3 |
| - |
减 |
y = 2-1 |
y = 1 |
| * |
乘 |
y = 2*3 |
y = 6 |
| / |
除,返回结果为浮点类型 |
y = 6/3 |
y = 2 |
| % |
求余,返回结果为浮点类型
要求两个操作数均为整数 |
y = 6%4 |
y = 2 |
| ++ |
递加,分为前加和后加
对布尔值和 NULL 将无效 |
y = 2
++y(前加)
y++(后加) |
y = 3 |
| -- |
递减,分为前递减和后递减
对布尔值和 NULL 将无效 |
y = 2
--y(前减)
y--(后减) |
y = 1 |
对于前加和后加,执行后的结果都是变量加1,其区别在于执行时返回结果不一样,参考下面两个例子:
var x = 2;
alert(++x); //输出:3
alert(x); //输出:3
var y = 2;
alert(y++); //输出:2
alert(y); //输出:3
递减同理。
[b]
赋值运算符[/b]
赋值运算符 = 用于赋值运算,赋值运算符的作用在于把右边的值赋值给左边变量。设定 y = 6,参见下表:
| 运算符 |
例子 |
等价于 |
运算结果 |
| = |
y = 6 |
� |
y = 6 |
| += |
y += 1 |
y = y+1 |
y = 7 |
| -= |
y -= 1 |
y = y-1 |
y = 5 |
| *= |
y *= 2 |
y = y*2 |
y = 12 |
| /= |
y /= 2 |
y = y/2 |
y = 3 |
| %= |
y %= 4 |
y = y%4 |
y = 2 |
[h2]赋值运算嵌套使用[/h2]
赋值运算符可以嵌套使用:
y = (x = 2) + 5; //结果: x=2,y=7
[b]
比较运算符[/b]
| 运算符 |
说明 |
例子 |
运算结果 |
| == |
等于 |
2 == 3 |
FALSE |
| === |
恒等于(值和类型都要做比较) |
2 === 2
2 === "2" |
TRUE
FALSE |
| != |
不等于,也可写作<> |
2 == 3 |
TRUE |
| > |
大于 |
2 > 3 |
FALSE |
| < |
小于 |
2 < 3 |
TRUE |
| >= |
大于等于 |
2 >= 3 |
FALSE |
| <= |
小于等于 |
2 <= 3 |
TRUE |
比较运算符也可用于字符串比较。
[b]
三元运算符[/b]
三元可以视作是特殊的比较运算符:
(expr1) ? (expr2) : (expr3)
语法解释:在 expr1 求值为 TRUE 时整个表达式的值为 expr2,否则为 expr3。
例子:
x = 2;
y = (x == 2) ? x : 1;
alert(y); //输出:2
该例子判断 x 的值是否等于 2,如果 x 等于 2,那么 y 的值就等于 x(也就是等于2),反之 y 就等于 1。
[h2]提示[/h2]
为了避免错误,将三元运算符各表达式用括号括起来是个不错的主意。
[b]
逻辑运算符[/b]
| 运算符 |
说明 |
例子 |
运算结果 |
| && |
逻辑与(and) |
x = 2;
y = 6;
x && y > 5 |
FALSE |
| || |
逻辑或(or) |
x = 2;
y = 6;
x && y > 5 |
TRUE |
| ! |
逻辑非,取逻辑的反面 |
x = 2;
y = 6;
!(x > y) |
TRUE |
[b]
字符串连接运算符[/b]
连接运算符 + 主要用于连接两个字符串或字符串变量。因此,在对字符串或字符串变量使用该运算符时,并不是对它们做加法计算。
例子:
x = "beijing";
y = x + "你好!"; //结果:y = "beijing你好!"
// 要想在两个字符串之间增加空格,需要把空格插入一个字符串之中:
y = x + " 你好!"; //结果:y = "beijing 你好!"
当对字符串和数字做连接(加法)运算时,会将数字先转换成字符串再连接(相加):
x = 25;
y = "我今年" + x + "岁"; //结果:y = "我今年25岁"