基本类型和引用类型

JavaScript变量分为两种类型:一种是基本类型,一种是引用类型。基本类型就是我们常见的五种类型:undefined、boolean、number、string、null这五种。不属于这五种之内的就是引用类型。

基本类型保存在栈区即栈内存,引用类型保存在堆区即堆内存。

这里我们先举个例子:


运行结果

我们看到,给arr2尾部添加一个元素4,结果arr1这个数组尾部也添加了一个4。为什么会出现这种情况,其实很简单,这就是我们所说的引用。

对于基本类型:

var a  = 10;

var b = a;

在内存中的栈内形式

对于引用类型:

我们看到对于引用而言他们将名字和地址存到栈内存中,堆内存中保存的是对象,我们队obj1或者obj2都会导致对象Object改变。他们只是指向了这个对象并不想基本类型变量那种,再次创建一个栈内存,不会相互影响。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容