javascript中的数据类型
文章结构
- 数据类型
- 数据类型分类
- 值类型与引用类型
- 面试题
数据类型
数据类型分类
最新的 ECMAScript 标准定义了 8 种数据类型,包括 7 种原始数据类型(或叫做基本数据类型):
- Boolean
- Number
- BigInt(BigInt 类型的数字必须加n后缀)
- String
- Symbol
- Undefined
- Null
其中,Symbol和BigInt是 es6 后新增的类型。
和 1 种引用数据类型:
- Object
值类型与引用类型
- 值类型:值类型包括 7 种原始数据类型,值类型是按值传递的。
1 | var a = 10; |
- 引用类型:引用类型是包括 Object 类型的所有,例如 Array、Date、Function。引用类型是按照共享传递的。
1 | var a = { x: 10, y: 20 }; |
面试题:
- 题目:undefined和null的区别:
- undefined:指缺少值。当一个申明了的变量未被初始化,此时它的值就是 undefined。
- null:指空值。表示此处不应该有值。
- 题目:类型判断用到哪些方法?
- typeof
typeof xxx 可以判断的类型有 boolean,number,bigint,string,symbol,undefined,function,object 。
1 | typeof null // object 这是typeof的一个bug |
- instanceof
常用于实例和构造函数之间的判断。
1 | [1, 2] instanceof Array; // true |
- 题目:手写实现
typeof
和instanceof
。
typeof
1 | function getType(temp) { |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 杨庭培的博客!
评论