在JavaScript中,数据类型分为两种:基本数据类型、引用数据类型
基本数据类型:Number、String、Boolean、Undefined、Null
引用数据类型:Function、Object、Array
基本数据类型存在栈中,由系统自动分配和释放。
引用数据类型存在堆中,要手动申请和释放。
栈中存的是一个内存地址,因为引用数据类型的大小不固定,而内存是固定的,所以把内存地址存在栈中,对象存在堆中。
当查询引用类型数据时,先从栈中读取地址,然后找到指向的堆中的对象。
接下来会牵扯到闭包、深浅拷贝、call、bind、apply
最常用的深拷贝:序列法和反序列法
下一篇文章再做介绍
最后贴上两张我认为不错的文章,很容易理解。
深入 js 深拷贝对象 https://www.jianshu.com/p/b08bc61714c7
js基础-面试官想知道你有多理解call,apply,bind?[不看后悔系列] https://juejin.cn/post/6844903906279964686