一段代码,,为啥hello不会替换arr?

var arr=[1,2,3,4,5];
function fn(arr){

arr[0]=100;arr="hello";

}
console.log(fn(arr));


森林海
浏览 672回答 1
1回答

繁星点点滴滴

这仅仅是函数参数传递问题,和作用域没关系。js参数传递方式是值传递,对于对象参数传递的是对象引用的copy,所以你修改的只是arr引用的copy指向的值,原来的arr的引用并不会修改。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript