【javascript】JS类型——Undefined

Unifined类型只有一个值,就是unifined,当声明的变量未初始化时,该变量的默认值是undefined。所以一般地,undefined表示变量没有初始化

<script type="text/javascript">
  var test;
//typeof(test);  //undefined
  console.log(test==undefined);
</script>

出现场景:

【1】已声明未赋值的变量

var i;
console.log(i);//undefined

【2】获取对象不存在的属性

var o = {};
console.log(o.p);//undefined

【3】无返回值的函数的执行结果

function f(){};
console.log(f());//undefined

【4】函数的参数没有传入

function f(x){return x;}
console.log(f());//undefined

【5】void(expression)

console.log(void(0));//undefined

类型转换:

Boolean(undefined):  false
Number(undefined):   NaN
String(undefined):  'undefined'    
Date(undefined);     Tue Oct 17 2017 14:04:33 GMT+0800

类型鉴别:

console.log(typeof undefined);//'undefined'
console.log(typeof 'undefined');//'string'
var undefined = 10;
console.log(undefined);//IE8-浏览器下为10,高版本浏览器下为undefined
刚好用的IE8,显示结果如下:

function t(){
    var undefined = 10;
    console.log(undefined);
}
console.log(t());//

返回结果为:0
          undefined

原文地址:https://www.cnblogs.com/Horsonce/p/7683175.html