赋值运算符
=
可以将符号右侧的值赋值给符号左侧的变量
+=
a += 5 等价于 a = a+5
-=
a -= 5 等价于 a = a-5
*=
a * = 5 等价于 a = a * 5
/=
a /= 5 等价于 a = a/5
%= 取余数
a %= 5 等价于 a = a%5
关系运算符
通过关系运算符可以比较两个值之间的大小关系
如果关系成立它会返回true,不成立会返回false
“>” 大于号
- 判断符号左侧的值是否大于右侧的
- 如果关系成立,返回true,否则返回false
“>=” 大于等于- 判断符号左侧的值是否大于或等于右侧的
- 如果关系成立,返回true,否则返回false
< 小于号
- 判断符号左侧的值是否小于右侧的
- 如果关系成立,返回true,否则返回false
<= 小于等于- 判断符号左侧的值是否小于或等于右侧的
非数值的情况 - 对于非数值进行比较时,会将其转换为数字然后再比较
- 如果符号两侧的值都是字符串时,不会将其转换为数字
而会分别比较字符串中字符的Unicode编码 - 比较字符编码时是一位一位进行比较的
如果两位一样,则比较下一位,所以借用它来对英文的排序
例如:
console.log(“abc”>“a”) 结果是true
- 判断符号左侧的值是否小于或等于右侧的
Unicode编码
- 在js中使用 \u十六进制编码
- 在网页中使用Unicode编码 &#编码;这里的编码需要转化为十进制
相等运算符
相等运算符用来比较两个值是否相等,如果相等返回true,否则返回false
使用 == 来做相等运算
当使用 == 来做比较时,如果类型不同则会自动进行类型转换,将其转换成相同的类型然后在比较
- undefined衍生自null,所以这两个值做相等运算时会返回true
- NaN 不和任何值相等,包括它本身
- 判断一个值是否为NaN 使用isNaN() 函数
如果该值是NaN 返回true,否则返回false
使用 != 来做不相等运算
- 不相等来判断两个值是否不相等,如果不相等返回true,否则返回false
- 不相等也会对变量进行自动的类型转换,如果转换后不相等返回true,否则返回false
===全等
- 用来判断两个值是否全等,它和相等类似,不同的是不 会进行自动的类型转换
- 如果两个值类型不同,会直接返回false
!==不全等
- 用来判断两个值是否不全等,它和不等类似,不同的是 不会进行自动的类型转换
- 如果两个值类型不同会直接返回true
条件运算符
条件运算符也叫三元运算符
语法:
条件表达式?语句1:语句2
当条件表达式不是布尔值时,会先将其转化为布尔值然后在求值
执行的流程:
- 首先对条件表达式进行求值
如果该值为true,则执行语句1,并返回执行结果;
该值为false,则执行语句2,并返回执行结果。
var a = 20;
b = 50;
var max = a > b ? a : b;
console.log(“max=”+max); 结果是50
也可以用来比数字大小
var a = 20;
b = 50;
c = 60;
var max = a > b ? a : b;
max = max > c ? max : c;
console.log(“max=”+max); 结果是60