js中存在5中原始数据类型:
1.Undefined(未定义):值只有一个undefined;
? ?实例:
? ? ?var str;
? ? ?alert(str);
? 结果:undefined
2.Null:值只有一个null
3.String:可以使用''或双引号。返回数据类型时,可以使用typeof;
typeof是一元运算符,后跟变量名称,用于获取变量的数据类型,其返回值有5个:undefined,boolean,number,string和object。
?
? ?实例:
? ? ?var str="wlh";
? ? ?var str1= new String("wlh");
? ? ?alert(str);
? ? ?alert(typeof str); ? ? //str是String类型
? ? ?alert(typeof str1); ? //str1是对象类型
? 结果:
? ? ?wlh
?? ??string
? ? ?object
4.Number
?
? var flag = 1;
? alert(typeof flag); //结果为number
5.Boolean:有true和false
? var flag = true;
? alert(typeof flag);//结果为boolean
注意:在javascript中,如果函数没有声明返回值,则会返回undefined,否则返回实际的类型值,比如:
function test(){
? ? return "test";
}
?
function test1(){
? ? return;
}
?
function test2(){
? ? ;
}
alert(test());//返回test
?alert(test1());//返回undefined
?alert(test2());//返回undefined?
?
6.alert(undefined==null)//返回true
原因:undefined实际上市从null派生出来的。?
?
7.?强制类型转换:在javascript中有3种强制类型转换:Boolean(value),Number(value),String(value)
实例:
var param1 = Number(3);?
?var param2= Boolean(true); ?
?var param3 = String("wlh"); ?
alert(typeof param3);//返回string
var param4 = new String("wlh");
alert(typeof param4);//返回object?
?
8.在javascript中,对于函数中定义的变量来说,加var表示局部变量,不加var表示全局变量。
?
9 .Object类型变量:
实例:
var obj = new Object();
for(var v in obj) {
? alert(v);
}
alert(obj.propertyIsEnumerable("prototype"));//返回false
注释:在js中,所有对象都是从Object对象继承过来的。Object中的属性是不可枚举的(propertyIsEnumerable返回false),因此无法通过for...in语句得到其中的属性。
?
for(var v in window) {
? alert(v);
}
?