数据类型和操作符
数据类型:
1.局部变量在函数执行以后会被销毁,全局变量会一直存在,如果变量前没有加声明,则视为全局变量。
2.数据类型共有六类:
a.String:单引号或双引号来说明,如"string"
b.Number:数字
c.Boolean:布尔值,只有true和false两种值。
d.undefind:只有一个undefind值,表示值为空。
e.Null:只有一个null的值,表示一个空对象指针。
f.Object:除了上述的其他类型
3.typeof可以来检测数据类型,注意:null调用typeof会返回object,构造函数调用会返回function
4.instanceof:用来判断一个变量是否某个对象的实例。
5.判断是否为数组的两种方法:a.instanceof b.constructor
6.NaN,即非数值,是一个特殊的数值。NaN是JS中唯一一个不等于自身的数值。isNaN()方法可以判断是否为NaN数值。
7.数值转换:
a.Number():可以用于任何数据类型
Boolean值:true返回1,false返回0
null值:返回0
undefined:返回NaN
b.parseInt():把字符串转换为整数
c.parseFloat():把字符串转换为浮点数
8.字符串转换:
a.toString():该方法一般不必传递参数,如果调用数值的话,参数可以是输出数值的基数。
不能对null和undefinded转换
b.String():参数为要转换的数值,null返回'null' undefined返回'undefined'
操作符:
1.一元操作符
a.递增和递减操作符:分为前置和后置两种,前置是操作符在数值的前面,例如++a,--a,a的值在语句执行之前改变。
后置操作符是操作符在数值的后面,例如a++,a--,a的值在语句执行之后改变。
b.一元加减操作符:对非数值进行一元加减操作符时,可以转换为数值。例如:a="1",+a=1。
2.位操作符
a.位非:由~符号表示,表示返回数值的反码。
b.位于:由&符号表示,对两个数值的二进制位数值进行与运算。
c.位或:由|符号表示,对两个数值的二进制位数值进行或运算。
d.位异或:由^符号表示,两个数值的二进制位数值如果同为0或同为1则返回0,否则返回1。
3.布尔操作符
a.逻辑非:由!符号表示
对象返回false
空字符串返回true
非空字符串返回false
0返回true
任意非0数返回false
null返回true
NaN返回true
undefined返回true
b.逻辑与
第一个操作是对象,则返回第二个整数。如果第二个为对象则返回对象,如果两个都是对象则返回第二个。
null,NaN,undefined返回null NaN undefined。
c.逻辑或
第一个操作是对象,则返回第一个操作数。如果第一个操作的值为true,则返回true,否则返回第二个的操作数,如果两个都是对象则返回第一个。
null,NaN,undefined返回null NaN undefined。
4.加减乘除操作符
a.加法
有一个操作数为NaN,则结果为NaN。
两个字符串可以通过加法符拼接起来,如果有一个是字符串,则另一个先转换为字符串再拼接。
b.减法
有一个操作数为NaN,则结果为NaN。
如果操作数是字符串,则会先转换为Number后再进行操作。
5.相等操作符
a.相等和不相等:先转换,再比较。
null和undefined返回为true
如果有一个操作数为NaN,相等返回false,不相等返回true。如果两个都是NaN,则相反。
b.全等和不全等:直接比较,不进行转换
null和undefined相等但不全等,因为null和undefined的值类似,但是类型不一样。

浙公网安备 33010602011771号