2 bogexueqianduan bogexueqianduan 于 2016.02.21 21:56 提问

JavaScript中对象的引用是什么意思?主要是这个引用是什么意思?

JavaScript中对象的引用是什么意思?主要是这个引用是什么意思?
我是在看原型的概念的时候看到的这句话,他说的是,【原型是对象的一个引用】这句话应该怎么解释呢?

3个回答

warmworm
warmworm   2016.02.21 22:43
已采纳

这里有两个概念混淆了

类-对象
实体-引用

类是对象的抽象定义 对象是类的具现化
如 人 <-> 张三、李四
实体和引用的关系 类比 你家 <-> 你家的地址

回到问题上
1 JS是对象语言,不是面向对象语言,所以它通过函数来实现类似于类的概念
2 JS在使用对象时,全部是引用方式(其实基本上语言都是,但至少C++不是)

因此这句话可以这么理解
原型是对象中某个变量,这个变量是一个相同类派生的对象实体的引用

bogexueqianduan
bogexueqianduan 感谢!
接近 2 年之前 回复
caozhy
caozhy   Ds   Rxr 2016.02.21 22:05

引用相当于指针。多个变量引用同一个对象实例,通过其中一个去修改它,结果会作用到所有引用变量上,因为它们其实都指向同一个对象。
js内部会维护一个引用计数,如果没有变量这个对象(引用计数为0),也就代表这个对象没用了,可以被垃圾回收。

bogexueqianduan
bogexueqianduan 感谢
接近 2 年之前 回复
caozhy
caozhy 回复伯格学前端: 看你的上下文,应该说的是this变量所引用的对象。
接近 2 年之前 回复
bogexueqianduan
bogexueqianduan 我是在看原型的概念的时候看到的这句话,他说的是,【原型是对象的一个引用】这句话应该怎么解释呢?
接近 2 年之前 回复
warmworm
warmworm   2016.02.21 22:49

另外一个基础概念
指针:保存(实体内存的)地址的变量
引用:初始化后,不可以改变的指针

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!