高程笔记-ECMAScript中的所有函数的参数都是按值传递的

6 篇文章 0 订阅
写在前面

关于这个问题,我的心路历程是:
疑惑(第一次看到时,心里冒了无数个小问号)->纠结(@~@,查了点资料,哪一种说法)->摆脱纠结(有了倾向和理解)。

网上争议比较多,但大都大同小异,我仅以自己所观所感,做说法的总结和自己的理解。

我比较倾向的说法

参数的传递方式实际上有3种,第三种按共享传递,既不是纯粹的值传递,又不是纯粹的引用传递,而是介于两者之间的而共享传递是指,在传递对象的时候,传递对象的引用的副本,有的还称为地址值传递(参数传递的是对象的地址,这个地址是一个值)
传参
当执行obj = new Object();时,新new一个对象赋值给该指针,指针指向的就是一个全新的对象了,和原来指向的对象失去联系:
这里写图片描述

个人理解

把其理解为按值传递是正确的,但也不必过分纠结所谓的第三种传参方式。不管是哪种说法,都是有相同的宗旨。我想,实践的结果就是硬道理。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值