undefined,null
undefined类型表示未定义类型,他是一个只有一个值的类型(这个值就是undefined)。任何变量在还没有赋值之前,都是undefined类型,所以我们在控制台打印未赋值的变量的时候,会返回给你一个undefined,正是因为未赋值的变量是undefined类型,值也是它。
但这还存在一个问题,因为undefined不是关键字,他存在可能被篡改的可能(现在不知道还能不能篡改了),所以最好使用void(0)来获取undefined的值。
可以看到,目前在控制台是无法更改undefined的值,谁告诉我怎么改undefined变量23333。不过为了严谨期间,如果真的需要把任意一个表达式变成undefined值,最好还是用void(0)(就是这么严谨[狗头])
null类型跟undefined类型一样,也是只有一个值,这个值也是他本身。但是与undefined不同的是,null是js的关键字,所以这个可以放心食用。
boolean
这个类型是我们前端非常常用的类型,boolean类型只有两个值,分别是true和false,分别来表示逻辑意义上的真假,也是关键字类型,非常的容易理解。
string
也是我们常用的一种类型,字符串类型。开发当中,我们经常会与它合作。需要注意的是,js当中的字符串是无法变更的,一旦声明,除了再一次赋值,无法修改字符串内容。也就是说,字符串具有值类型的特征。
number
数字类型,在js当中,非常需要注意的是,使用数字比较的时候,因为存在浮点数精度原因,从而存在无法使用==来进行比较的问题。这块可以参考我的上一篇知识为什么在js当中0.1+0.2并不等于0.3。
symbol
这个类型是es6当中引入的新类型,是一切非字符串的对象key集合。于是在引入了symbol后,整个对象系统都被symbol重构了。正式因为他的特性,即便是描述相同,symbol也不相等,这就确保了对象属性key唯一的特性。(如有理解错误的地方,欢迎指出)
object
js当中最复杂的类型,也是js的核心机制之一,这个单开一篇文都记录不完,这里也就只针对类型来说。js当中的类与java和c++当中的类是不一样的。java和c++的每一个类,都是一种类型。而在js当中,类仅仅是运行对象的一个私有属性而已,js中是无法自定义类型的。这个区别,小伙伴们一定要记住。
每天一个小知识,每天进步一丢丢
常见问题FAQ
- 免费下载或者VIP会员专享资源能否直接商用?
- 本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
- 提示下载完但解压或打开不了?
- 找不到素材资源介绍文章里的示例图片?
- 模板不会安装或需要功能定制以及二次开发?
发表评论
还没有评论,快来抢沙发吧!