扫码关注官方订阅号
参数传递是按值传递的,为何传递引用类型时又是传递的地址?
人生最曼妙的风景,竟是内心的淡定与从容!
参数按值传递,这个"值"对于原始类型来说,就是变量对应的原始数据;而对于对象类型来说,就是这个变量指向的地址数据(地址也是个值)
这是JS解释引擎自己控制的,我们只要知道就好了。我们知道,数组、类都是引用传递的,基本类型都是按值传递的。这主要是考虑到内存的利用率,数组和类等一等都比较大,复制一份的时间就很不合算,而且,很多时候我们都需要修改其中的值,引用传递才是最合理的。
因为这个变量本来就是存放在栈里面的堆地址(指针),堆空间大适合存放复杂数据类型,栈空间小效率高一般存放原始类型(基本类型)
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
参数按值传递,这个"值"对于原始类型来说,就是变量对应的原始数据;而对于对象类型来说,就是这个变量指向的地址数据(地址也是个值)
这是JS解释引擎自己控制的,我们只要知道就好了。我们知道,数组、类都是引用传递的,基本类型都是按值传递的。这主要是考虑到内存的利用率,数组和类等一等都比较大,复制一份的时间就很不合算,而且,很多时候我们都需要修改其中的值,引用传递才是最合理的。
因为这个变量本来就是存放在栈里面的堆地址(指针),堆空间大适合存放复杂数据类型,栈空间小效率高一般存放原始类型(基本类型)