1.运算符和操作数的组合就称为表达式。
2.算术运算符(+ - * / % a++ a-- --a ++a)
a.+
1.用于数值计算:var a=1;var b=2;alert(a+b)===3
2.用于字符串连接:var a='h';var b="w";alert(a+b)==hw
***任何的数据类型和字符串相加都是字符串***
var a='h';var b=1;alert(a+b)=='h1'
b.%
1.用于取一段范围的值(*取偶数。**取奇数)
2.一般不用于小数,因为结果不确定
c.a++(++在后面,先赋值,自己再加;a=1;b=a++;b=1)
d.++a(--在前面,先加,再赋值;a=1;b=++a;b=2)
3.关系运算符(比较运算符)[< > <= >= == === != !==]
1.运算的结果都是布尔值(ture;false)
2.都是字符串的时候,会转换成ASCII码再比较;多个字符串只比较首个,首个相等再比较下一个。var a='abv';var b='aba';alert(a>b);结果ture.
ASCII码:a=a; -> b=b; -> v>a;
3.都是数值正常比较
4.当一个是字符串,一个为数值的时候;会把字符串转化为数值类型,然后进行比较,如果不能转换为数值类型,则会返回NaN,返回false
5.unfinished null
6.如果两个都是数值型字符串,那么他们也只是比较第一个。
var a='223';var b='31';alert(a>b); == false
7.一个数值和布尔值比较,会把布尔值转化为数值后再较。false=0;true=1
注意:== 只比较值是否相等
1.比较字符串时,是比较ASCII码值
2.比较两个数值是比较他们的数值是否相等
3.比较函数的时候,是判断他们的位置是否相等
注意:===不但比较值,还比较类型是否相等
3.赋值运算符(= += -= *= /= %= )
1.+=
1.用于数值的相加再赋值var a=1;a+=2;a=3
2.用于字符串连接再赋值
注意:任何的数据类型和字符串相加都是等于相加后的字符串
4.逻辑运算符(布尔运算符)[与and && 或 or || 非 not !]
a&&b 两个都为真,才返回为真
a||b 其中一个为真,就返回为真
!a 取反,假变真,真变假
1.可以对任何类型的数据进行运算,运算的时候转换为对应的布尔值
undefined:false
null:false
boolean:就是本身的值
number:除了0以为都是真的
string:除了空字符串以为都是真的
对象:true
2.类变量进行赋值
var a = b && c
如果一个运算数是对象,另一个是 Boolean 值,返回该对象。
如果两个运算数都是对象,返回第二个对象。
如果某个运算数是 null,返回 null。
如果某个运算数是 NaN,返回 NaN。
如果某个运算数是 undefined,发生错误。
w3c 逻辑运算符--详解!
5.一元运算符
typeof + - delete new ++ --
A. + 正号、正数
B.delete 删除对象的方法或是属性
C.new 用来创建一个对象
6.特殊运算符
A. , 用来一次声明多个变量
B.()
1.运算的时候有优先级的作用 a*(b-c)
2.运行一段函数
C.三元运算符(根据表达式的计算结果有条件的为变量赋值)
格式: var 变量= Boolean expression?真值:假值
var c=a>b?a:0;
7.位运算符(不是很懂这个,忘大神指点指点)