前言
在前端实际开发中,有关JS原生的堆和栈也是很重要的点,关于底层和原理的掌握使用,尤其是在性能优化方面甚为重要。众所周知,JS的变量都是存放在内存中的,而且内存给变量开辟了两块区域,即堆区域和栈区域,其实堆和栈是数据存储的一种结构。所以在实际开发中,JS中堆和栈也是比较常见且重要的知识点,而且在前端求职面试的时候二者也是常考知识点,可以说非常重要,那么本文就来做一下总结,方便查阅使用。
JS数据类型
在介绍栈和堆之前,首先再来看一下JS数据类型。前端开发者应该都知道,JS数据类型分为:基本数据类型和引用数据类型。基本数据类型其实就是保存在栈内存中的简单数据段,每种类型的数据所占用的空间大小都是确定的;引用数据类型则是保存在堆内存中的对象,每种类型的数据所占用的空间大小不确定。
1、基本数据类型
- Number:数字类型,
- Boolean:布尔类型,
- String:字符串类型,
- null,
- undefined,
- symbol(ES6新增的),
注意:null虽然是基本数据类型,但输出的结果是Object是因为null被认为是空的对象引用。
2、引用数据类型
- array:数组ÿ