js函数的参数传递

这篇博客探讨了JavaScript中函数参数的传递方式。对于基本类型,参数是按值传递,函数内部的修改不会影响外部变量。而对于引用类型,如对象,参数实际上是按引用传递,函数内部的改动会直接影响到原始对象。通过示例代码,展示了这两种情况的区别。
摘要由CSDN通过智能技术生成

函数的参数传递方式

js中所有函数的参数都是按值传递的,我们按传递基本类型和引用类型进行区分。
首先传递基本类型时,被传递的值会复制给命名参数,命名参数是一个局部变量,在函数中改变这个局部变量,不会影响外部变量。举例如下:

function fn(num){
    num++
    return num
}
let count = 1
let res = fn(count)
console.log(count)   //1
console.log(res)     //2

传递引用类型时,会把内存中的地址复制给局部变量,由于内外变量指向同一对象,在函数内部改变这个对象就会同时改变外部变量。举例如下:

function fn(obj){
    obj.name = 'pzx'
}
let person = new Object()
fn(person)
console.log(person.name)   //‘pzx’
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值