http://duqiangcise.iteye.com/blog/1535241
JavaScript中的类型分为:undefined,null,number,string,boolean,function和其他Object引用类型。
undefined,null,NaN(Not A Number)和typeof
undefined:表示一个对象没有被定义、或没有被初始化、或一个并不存在的对象属性。
null:表示无值。
typeof运算符返回的是一个字符串。
说明:
1.NaN是一种特殊的number,NaN与任何值都不相等,与自己也不相等。
2.undefined类型是从null派生出来的,所以它们是相等的。
怎么判断某个值是否未定义?
答:使用===或typeof
如:
一个没有返回值的function,如下的f1(或者直接return返回,如下f2)实际上返回的是undefined。
JavaScript中的类型分为:undefined,null,number,string,boolean,function和其他Object引用类型。
undefined,null,NaN(Not A Number)和typeof
undefined:表示一个对象没有被定义、或没有被初始化、或一个并不存在的对象属性。
null:表示无值。
typeof运算符返回的是一个字符串。
- 下面是typeof运算符对各个类型的返回结果:
- 1.undefined:undefined
- 2.null:object
- 3.string:string
- 4.number:number
- 5.boolean:boolean
- 6.function:function
- 7.object:object
- <script
type="text/javascript"> - <!--
- alert(typeof(NaN));//输出number
- var
a=undefined;//等价于var a; - alert(typeof
(a));//输出undefined - alert(null
== undefined);//输出true - alert(null==null);//输出true
- alert(NaN
== NaN);//输出false - alert(typeof
(m));//输出undefined,一个未定义的对象 - alert(typeof(document.xx));//输出undefined,一个不存在的对象属性
- //-->
- </script>
说明:
1.NaN是一种特殊的number,NaN与任何值都不相等,与自己也不相等。
2.undefined类型是从null派生出来的,所以它们是相等的。
怎么判断某个值是否未定义?
答:使用===或typeof
如:
- <script>
- <!--
- var
t1 = null; - var
t2;//或var t2 = undefined; - if(t1
=== undefined){ -
alert('t1 undefined!'); - }
- if(t2
=== undefined){ -
alert('t2 undefined!'); - }
- if(typeof(t2)
== 'undefined'){ -
alert('t2 undefined use typeof!'); - }
- //同时判断是否为undefined和null的方法,如下:
- if(!t1){
-
alert('t1 is not set value!'); - }
- if(!t2){
-
alert('t2 is not set value!'); - }
- //-->
- </script>
一个没有返回值的function,如下的f1(或者直接return返回,如下f2)实际上返回的是undefined。