1、关于Javascript中的“===”与“==”的比较
简而言之:“===”要求类型与数值都相等。
“==”只要求数值相等
var num_str=“1”; // num_str为字符型变量 num_str == 1;//结果为true num_str === 1;//值相同,但是类型不相同。结果为false 1===1 ;//值与类型都相同,返回true 1===2 ;//类型同,值不同,返回false
2、关于“||”与“&&”逻辑符
设有 A||B 与 C&&D
A与B只需要有一个为真,整体则都为真
C与D只需要有一个为假,则整体值为假
注意:若A为真,则B部分就不需要被执行了。
若C为假,则D部分就不需要被执行了。
(Javascript默认不执行)
3、操作符之间的优先级
算术操作符 > 比较操作符 > 逻辑操作符 > 赋值等号"="
4、运算符的特殊用法(隐式转换)
1 var x = "66H34TYY" + 42 ;
2 var y = 42 + "hahaha";
3 "37" + 37
以上三种 “+” 号都理解为字符串拼接,返回的都是一个string类型数据
1 var result = "37" - 7
这里的 “-” 号却理解为 减法
//设car为null
1 car - 0 //car 减去 0
2 car + “” //car加上空字符串
可利用这两种办法,巧妙地把car(做减法)变为number或者(做加法)变为string
5、特殊性的使用情况
-
var a = b = 3;
相当于
b = 3; var a = b;
所以 b 成了全局变量,而 a 是自执行函数的一个局部变量。