美文网首页JAVASCRIPT编入集
十二、必须说的传递关系

十二、必须说的传递关系

作者: loster | 来源:发表于2018-01-21 13:31 被阅读49次

在学习cpp( C++ )时候,有一堂课专门讲了关于值、引用、地址传递的关系,不过毕竟转行没有继续写cpp,所以只能当作课本上的知识来说一下了。

传值:也叫副本传递。其实就是从定义对象的本身clone了一个副本。如果你知道火影的影分身之术,就明白了,从本体上拷贝一份出来,然后再去对分身操作。这时候和本体是没有关系的。

传引用:这个就比较操蛋了,生活中经常遇到的某个隔壁老王,其实就是一个引用,代指那个生理越界的人。或者你天天叫的大佬,也是一个引用。这个引用就比较多了,五花八门的。cpp上用 &表示这是一个变量的引用。或者说狗子你变了,这里的狗子也是一个引用,代表的就是你啊。

指针 或者叫地址,其实就是某一块内存的编号。cpp用 *表示这个变量是一个地址引用。虽说写的是代码,但是毕竟所有的代码内容都是跟内存打交道,不管是间接还是直接。这个指针就是直接跟内存打交道的了。怎么形容这个指针呢,经纪人你们都知道吧。

比如说这里

int a = 1;

划了块地(开辟了一块内存)创立个公司(地址),公司主体内容是(主体内容) 1,这时候有个a掌管了这个公司。
a其实就是法人代表,法人就是那块内存,1 就是公司经营能力,而int就是公司经营范围。
然后有一个内容:

int &b = a;

这时候对法人代表取了个名字,叫b。
然后这时候:

int *c = &a;

雇了一个经纪人,经纪人拿到了实际上的法人授权书。
如果这样还不懂的话呢,我就不知道怎么解释清楚关系了。
当然,我们JavaScript不需要了解那么多引用、地址关系。但是我们还是需要知道值的传递关系。
JavaScript使用的是按值传递

var a = 1;
var b = a;
b = 2;
a // 1
b // 2

其实如果你看很多代码工具的编译后,这句话会被直接替换为

var a = 1;
var b = 2;

不过刨去这些不说,按照一步一步赋值操作来说,传递之后的内容并不会影响到之前的内容。
基本类型的确是这样的。不过,对于引用类型的来说,就有待区分了,同样是按值传递,引用类型传递的是一份引用副本。类似一把钥匙,拿去复制了一把。两个钥匙都能开一把锁。比如:

var a = {};
var b = a;
b.name =1;
a // {name:1}
b// {name:1}

这下懂了吧,其实这里的b类似于指针关系,明确拿到了a操作 {} 的那块地址。这也就是引用类型。
不得不说一下最强指针:this
this其实就是当前顶级作用域(或者说上下文对象)的指针。上下文是由系统控制的,不能赋值。所以对this是不能赋值的。

相关文章

  • 十二、必须说的传递关系

    在学习cpp( C++ )时候,有一堂课专门讲了关于值、引用、地址传递的关系,不过毕竟转行没有继续写cpp,所以只...

  • 事件传递

    注意:view之间互为父子关系,那么控制器也必须为父子关系,原因:事件传递,view传递到控制器,如果控制器之间不...

  • 传递(十二)

    今天,我要学会控制情绪哈佛大学图书 馆的墙上有这样一条校训:“我荒废的今 日,正是昨日殒身之人祈求的明日。所 以,...

  • 《妈妈的心灵课》读书小组招募

    英国精神分析学家温尼科特说:关系的实质,是看谁传递焦虑,谁承接焦虑。传递焦虑的,是关系中的问题制造者,而承...

  • 《妈妈的心灵课》读书小组招募

    英国精神分析学家温尼科特说:关系的实质,是看谁传递焦虑,谁承接焦虑。传递焦虑的,是关系中的问题制造者,而承接焦虑的...

  • 热气不是往上吗?地暖会传热到楼下?

    「关注地暖说 轻松装地暖」 讨论这个问题必须先要知道热传递:指由于温度差引起的热能传递现象。 热传递三种形式:热传...

  • 大西安专题1:长安十二时辰8

    接第7回所述内容,谈谈《长安十二时辰》的黑科技,那就是望楼的信息传递系统,亦即“望楼”与编码技术的关系。 除了鼓声...

  • 雨村~雨辰~《快点告诉你》3-22

    想快点告诉你~我用你送的蜡笔~ 画了幅画特快传递给你~ 想快点告诉你~我的十二分惦记~ 再远的路没有什么关系~ 我...

  • 耦合性学习

    耦合性(Coupling) 模块之间的依赖关系,控制关系、调用关系、数据传递关系 非直接耦合 Nondirect ...

  • 唐宫梦番外(一)芙蓉面

    (八十二)文秀说的都对 唐宫梦番外(一)芙蓉面 (一) 师傅说,做为一名合格的杀手,首先,必须无情;其次,必须有强...

网友评论

    本文标题:十二、必须说的传递关系

    本文链接:https://www.haomeiwen.com/subject/nbmfaxtx.html