前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >重学javascript 红皮高程(3)

重学javascript 红皮高程(3)

作者头像
web前端教室
发布2018-02-06 11:49:55
5770
发布2018-02-06 11:49:55
举报
文章被收录于专栏:web前端教室web前端教室

继续啊,继续JS基础知识补全之路。

昨天说到JS的几种数据类型,像我这种脑子不太好使,记不清JS共有几种对象的人,可以这么记,JS这东西根本不支持自定义类型,所以你声明的东西,要么是变量,要么是对象。。。然后面试的时候你就瞎蒙,至少也能蒙对几个。

undefined,它就只有一个值,就是undefined。

使用var声明一个变量,但没给值的时候,它的值就是undefined。

例如,

代码语言:js
复制
var xx;
console.log(xx == undefined);
//true

undefined 和 null的区别,网上有很多文章,各种说法也多。

你就记得null是返回一个空对象的引用;undefined返回的是变量没给值的时候。这么回答吧,虽然不全对,但至少不会错。

这里还有个小知识点,我大白话的讲一下,

代码语言:js
复制
var xx;

console.log(xx)..会返回undefined,

console.log(xxx);直接打印一个未声明的变量xxx,就报错。

但是,不管这个变量是否声明,你用typeof检测,都能正常返回undefined。。

例如,

代码语言:js
复制
var xx;
console.log(typeof xx);//undefined
console.log(typeof bbb);//undefined

这也是JS语言的神奇之处,这里多花点精力就OK啦。

================

Null这个类型,它也是只有一个值,就是null。

刚才说过,null值表示的是一个空的对象引用。所以,你用typeof去检测null的时候,返回的是Object。

================

undefined 和 null它们实际是亲人,因为undefined是从null分出来的。

你看ECMA-262规定,它们的相等性测试要返回true。

所以,为什么undefined会等于null?

没有为什么,就是这样规定的:

代码语言:js
复制
console.log( null == undefined );
//true

重学javascript 红皮高程(2)

重学javascript 红皮高程

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2016-03-08,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 web前端教室 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
大数据
全栈大数据产品,面向海量数据场景,帮助您 “智理无数,心中有数”!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档