在ECMAScript中(为什么是ECMAScript中,因为javascript包括了ECMAScript、DOM、BOM、而ECMAScript定义了javaScript中的语法、关键字等等)变量可以存放两种类型的值,原始类型和引用类型、原始类型其实可以理解为Java、C#等语言的值类型,值存放栈(stack)上面。ECMAScript中包含五种原始类型,Undefined、Null、Number、Boolean、String。 注意:String类型在javaScript中属于原始类型,这点不同于Java、C#等语言。
typeOfy运算符:
typeof运算符有一个参数,即要检查的变量或值。例如
var sTemp = "test string";
alert(typeof sTemp);//output "test string"
alert(typeof 20); //output "number"
对变量或值调用typeof运算符将返回下列值之一:
1、“undefined”:如果变量是Undefined型的。
2、“boolean”:如果变量是Boolean
型的
3、“number”:如果变量是Number类型的
4、“string”:如果变量是String类型的
5、“object”:如果变量是一种引用类型或null类型的
undefined类型只有一个值,即undefined。当声明的变量未初始化时,该变量的默认值是undefined。
注意:值undefined并不同于未定义的值。 但是,typeof运算符并不真正区分这两种值
参考链接:http://blog.csdn.net/qingyun1029/article/details/6371621