Js数据类型

2020-11-08  本文已影响0人  海之深处爱之港湾

一. 数据类型

    基本数据类型: String null Number undefined Boolear
    引用数据类型: Object Array Symbol

二. 基本数据类型与引用数据类型的区别

1. 声明变量是内存分配不同
2. 不同内存分配带来不同的访问机制

在javascript中是不允许直接访问保存在堆内存中的对象的,所以在访问一个对象时,首先得到的是这个对象在堆内存中的地址,然后再按照这个地址去获得这个对象中的值,这就是传说中的按引用访问。

而原始类型的值则是可以直接访问到的。

3. 复制变量时的不同
4. 参数传递的不同(把实参复制给形参的过程)

首先我们应该明确一点:ECMAScript中所有函数的参数都是按值来传递的。

但是为什么涉及到基本数据类型与引用数据类型的值时仍然有区别呢?还不就是因为内存分配时的差别。

因此它传递的值也就是这个内存地址,这也就是为什么函数内部对这个参数的修改会体现在外部的原因了,因为它们都指向同一个对象。

上一篇 下一篇

猜你喜欢

热点阅读