var ary=[1,2,3,4];
function fn(ary){
ary[0]=0;
ary=[0];
ary[0]=100;
return ary;
}
var res=fn(ary);//请问当把函数给res的时候开辟新空间了吗?还是指向函数定义时的那个空间?
console.log(ary);
console.log(res);
var ary=[1,2,3,4];
function fn(ary){
ary[0]=0;
ary=[0];
ary[0]=100;
return ary;
}
var res=fn(ary);//请问当把函数给res的时候开辟新空间了吗?还是指向函数定义时的那个空间?
console.log(ary);
console.log(res);
函数也是对象,对象是引用数据类型,在赋值的时候传递的是引用值,相当于地址。
var res=fn;//把函数的引用指向res 变量
//提问中
var res = fn(ary)// fn(ary) 相当一个表达式,求出结果后赋给 res
//所以 res 指向的应该是 return 语句返回的 数组ary的引用
10 回答11.1k 阅读
6 回答3k 阅读
5 回答4.8k 阅读✓ 已解决
4 回答3.1k 阅读✓ 已解决
2 回答2.7k 阅读✓ 已解决
3 回答2.3k 阅读✓ 已解决
3 回答2.1k 阅读✓ 已解决