1.js的数据类型
typeof :用来检测给定变量的数据类型 ,对一个值使用typeof操作符可能返回某个字符串。
"undefined" 这个值未定义,
"boolean" 布尔值
"string" 字符串
"number" 这个值是数值
"object" 这个值是对象或null
"function" 这个值是函数
Undefined类型
Undefined类型只有一个值,即特殊的undefined。如用var声明变量但没有对其初始化,这个变量的值就是undefined。
Null类型
Null类型只有一个值的数据类型,这个特殊的值是null。如果定义的变量准备在将来用于保存对象,那么最好将变量初始化为null。
Boolean类型
这个类型就不多说了,和java类似。
Number类型
(1)NaN非数值,是一个特殊的数值,这个数值用于表示一个本来要返回数值的操作数未返回数值的情况。如除0操作。
(2)isNaN()//判断是否是数值
(3)数值转换:
Number()
如果是boolean值,true和false分别被转换为1和0。
如果是null,返回0。
如果是undefined,返回NaN。
如果是数字值,只是简单的传入和返回。
parseInt()
parseFloat()
String类型
和java类似。
Object类型
对象类型:和java类似。
2.js的操作符
位操作符:
~:按位非
&:按位与
|:按位或
^:按位异或
<<:左移
>>:有符号右移
>>>:无符号右移
布尔操作符
alert(!false);//true
alert(!undefined);//true
alert(!null);//true
alert(!NaN);//true
alert(!0);//true
alert(!"");//true
alert(!123);//false
alert(!"df");//false
相等操作符
!= 不相等 如"55"!=55返回false。转换后相等。
== 相等操作符 如"55"==55返回true。
=== 全等操作符 如"55"===55返回false,数据类型不同。
!== 不全等 如"55"!==55返回true,数据类型不同。
null=undefined true
"NaN"==NaN false
NaN==5 false
false==0 true
true==1 true
true==2 false
null==0 false
undefined==0 false
with语句
var qs=location.serch.substring(1);
var hostName=location.hostname;
var url=location.href;
等价于下面的
with(location){
var qs=serch.substring(1);
var hostName=hostname;
var url=href;
}
|