js笔记——js里的null和undefined
以下内容摘录自阮一峰的《语法概述 -- JavaScript 标准参考教程(alpha)》章节『5.null和undefined』,以做备忘。
null与undefined都可以表示“没有”,含义非常相似。目前null和undefined基本是同义的,只有一些细微的差别。
在if语句中,它们都会被自动转为false,null == undefined
返回true
。
对于null和undefined,可以大致可以像下面这样理解。
null表示空值,即该处的值现在为空。典型用法是:
作为函数的参数,表示该函数的参数是一个没有任何内容的对象。
作为对象原型链的终点。
**undefined表示不存在值,就是此处目前不存在任何值。**典型用法是:
变量被声明了,但没有赋值时,就等于undefined。
调用函数时,应该提供的参数没有提供,该参数等于undefined。
对象没有赋值的属性,该属性的值为undefined。
函数没有返回值时,默认返回undefined。
在JavaScript里,条件判断语句中,下面六个值被转为false,其他值都视为true。
undefined
null
false
0
NaN
""(空字符串)
需要特别注意的是,空数组([]
)和空对象({}
)对应的布尔值,都是true。
作者: 阮一峰
来源: http://javascript.ruanyifeng.com/grammar/basic.html#toc20
(本文完)
本文优先在公众号"飞鸿影的博客(fhyblog)"发布,欢迎关注公众号及时获取最新文章推送!
本文优先在公众号"飞鸿影的博客(fhyblog)"发布,欢迎关注公众号及时获取最新文章推送!
作者:飞鸿影
出处:http://52fhy.cnblogs.com/
版权申明:没有标明转载或特殊申明均为作者原创。本文采用以下协议进行授权,自由转载 - 非商用 - 非衍生 - 保持署名 | Creative Commons BY-NC-ND 3.0,转载请注明作者及出处。