js参数传递数组对象,修改此参数,会影响原数组吗

 我来答
cs903016
2017-11-30 · TA获得超过1179个赞
知道小有建树答主
回答量:2599
采纳率:80%
帮助的人:1731万
展开全部

会不会修改原数组需要看你的函数里面的方法改变没有改变原数组的数据,举个例子:

1,方法中改变了原数据的,会影响原数组

var a = [1,2,3];
function test(arr){
    arr[0] = 4;//直接改变原数组的第一个数据,影响原数组,故改变了原数组。
    console.log(arr);//[4,2,3];
}
a;//在没有调用test之前是[1,2,3]
test(a);//输出[4,2,3]
a;//test之后[4,2,3]

2,方法中没有影响原数据的,不会改变原数组

var a = [1,2,3];
function test(arr){
    arr = [4,5,6];//此处,arr直接赋予新值,和原数据没有关系,不会影响原数据
    console.log(arr);//输出[4,5,6]
}
a;//test之前[1,2,3]
test(a);//输出[4,5,6]
a;//test之后[1,2,3]没有影响原数据

以上个人见解,不到之处还请斧正。

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式