网站首页 > 文章精选 正文
日常面试中,数据类型也是一个主要类型的面试问题,这种基础类的反而常常容易忽略。
基本数据类型(7种)
- undefined:未定义类型
- null:空值类型
- boolean:布尔类型(true/false)
- number:数字类型(含NaN)
- string:字符串类型
- symbol:符号类型(ES6新增)
- bigint:大整数类型(ES2020新增)
引用数据类型(对象类型)
- Object:普通对象
- Array:数组对象
- Function:函数对象
- Date:日期对象
- RegExp:正则对象
- 其他内置对象...
1.基本数据类型存储方式
- 存储位置:栈内存(Stack)
- 存储方式:直接存储数据值
2. 引用数据类型存储方式
- 存储位置:堆内存(Heap)
- 存储方式:栈内存存储指针地址,堆内存存储实际数据
5个必须掌握的面试考点
通过JSON的方式完成的深拷贝在常规使用中是没问题,极端情况,如函数对象引用自身出现循环引用,就会报错,此时需要手动递归的方式做特殊处理实现深拷贝,或者引用健全的工具库。
高频面试题
Q1:typeof null返回什么?为什么?
A:返回"object",这是JavaScript设计初期的遗留问题。null值表示空对象指针,二进制前三位为000(与对象类型标识相同)
Q2:如何判断数组类型?
A:优先使用Array.isArray(),其次是
Object.prototype.toString.call(arr) === '[object Array]'
Q3:基本类型有方法吗?
A:基本类型本身没有方法,但当调用方法时会临时创建包装对象(如"text".length会创建String对象)
Q4:0.1+0.2为什么不等于0.3?
A:由于IEEE 754双精度浮点数精度问题,实际计算结果为0.30000000000000004
Q5:如何实现真正的深拷贝?
A:可通过递归实现、使用JSON序列化(不处理函数和循环引用)、或第三方库如lodash的_.cloneDeep()
猜你喜欢
- 2025-05-03 爬虫实战(二)爬取Ajax数据(爬取数据的代码)
- 2025-05-03 Python Matplotlib 入门教程:可视化数据的基石
- 2025-05-03 突破亚马逊壁垒,Web Unlocker API 助您轻松获取数据
- 2025-05-03 最实用的大数据可视化分析工具汇总
- 2025-05-03 专题|外行人看大数据 十款最常用的数据可视化工具
- 2025-05-03 网络爬虫——从网站中提取有用的数据
- 2025-05-03 这6款数据可视化软件,不会写代码也能用!
- 2025-05-03 B端技术常识:MVC模式(什么是mvc模式,各模块的作用是什么)
- 2025-05-03 越晚搞懂 MySQL JSON 数据类型,你就越吃亏
- 2025-05-03 JSON数据类型详细总结(json数据的数据值可以是哪些)
- 最近发表
- 标签列表
-
- newcoder (56)
- 字符串的长度是指 (45)
- drawcontours()参数说明 (60)
- unsignedshortint (59)
- postman并发请求 (47)
- python列表删除 (50)
- 左程云什么水平 (56)
- 计算机网络的拓扑结构是指() (45)
- 稳压管的稳压区是工作在什么区 (45)
- 编程题 (64)
- postgresql默认端口 (66)
- 数据库的概念模型独立于 (48)
- 产生系统死锁的原因可能是由于 (51)
- 数据库中只存放视图的 (62)
- 在vi中退出不保存的命令是 (53)
- 哪个命令可以将普通用户转换成超级用户 (49)
- noscript标签的作用 (48)
- 联合利华网申 (49)
- swagger和postman (46)
- 结构化程序设计主要强调 (53)
- 172.1 (57)
- apipostwebsocket (47)
- 唯品会后台 (61)
- 简历助手 (56)
- offshow (61)