操作符:算术操作符、比较操作符、逻辑操作符、其他操作符
js弱数据类型语言:隐式的数据类型转换
1、 逻辑运算符
(1)逻辑与 && (同真才真,有假则假)
可应用于任意数值,如果有一个操作数不是布尔类型,逻辑与就不一定返回boolean类型;
如果第一个操作数是null,NaN,undefined,false,0," ",可被转换为false的值的时候返回该值;
如果第一个数其他,返回第二个数;
表达式 && 表达式
true && true ==> true
true && false ==> false
false && false ==> false
false && true ==> false
短路:有一个为false-->false
(2)逻辑或 || (有真则真,同假则假)
如果两个操作数是null,NaN,undefined,false,0," ",可被转化为false的值的时候返回该值;
如果第一个操作数是null,NaN,undefined,false,0," "则返回第二个操作数;
表达式 || 表达式
true || true ==> true
true || false ==> true
false || false ==> false
false || true ==> true
短路:有一个为true-->true
(3)逻辑非 !
该操作符应用任何类型数值都返回一个[布尔值];先将任意类型的数值转换为Boolean,然后取反;
!a ==> !Boolean(a)
!0 // true
!"" // true
!NaN // true
!false // true
连用两次逻辑非,就可以将任意数据类型转换为Boolean类型
!! a ==> Boolean(a)
!!"" //false
2、 数据类型转换
(1)其他数据类型转换为String
toString()函数
除了null、undefined,其他三种基本数据类型的变量均有一个toString()函数,该函数可以获取该变量指定值的字符串表示;
number类型.toString();
boolean类型.toString();
var a = true;
a.toString(); //'true'
如果变量为number类型,默认情况下toString()是以十进制格式返回数值的字符串表