++ --
a++ 先返回a的值 再执行a=a+1
++a 先执行a=a+1 再返回a的值
--同理
&& ||
&&
如果两个操作数都不是布尔类型
如果两个值转换成布尔类型都是true 则返回第二个操作数
如果有一个操作数转换成布尔类型是false 则返回这个操作数
var b= "qwe" &&"asd" console.log(b) // asd
var c = "acs" && undefined // undefined
||
如果两个操作数都不是布尔类型
如果两个值转换成布尔类型都是true 则返回第1个操作数
如果两个值转换成布尔类型有一个是false 则返回true的操作数
如果两个值转换成布尔类型都是false 则返回第二个操作数
!
!!
!!a
a为 null,undefined、“”、NaN时返回false
var z = a* (x/y)*x = a*x*x/(y*y)