一、undefined
undefined表示“缺少值”,一般会出现在下面4种场景:
- 变量声明了,但是还没有赋值时,该变量的值为undefined;
- 对象没有赋值的属性,该属性的值为undefined;
- 调用函数时,函数需要的参数没有传递时,该参数为undefined;
- 函数没有返回值时,默认返回undefined;
代码演示:
<script type="text/javascript">
var b;
console.log(b);//b已声明,但未赋值,输出"undefined"
var obj = new Object();
console.log(obj.c);//c对象的属性c,没有赋值时,输出"undefined"
function f(d){console.log(d)};
f();//没有给d传递参数,函数在调用的时候,参数输出"undefined"
var e = f();
console.log(e);//函数没有返回值,变量e为"undefined"
</script>
二、null
null被认为是对象的占位符,如果定义的变量在将来要被保存为对象,应该将变量初始化为null。虽然null用typeof检测出来的值是”object”,但是null是原始数据类型。
(我有免费的JavaScript学习视频,想要的鞋童们可以加我微信)