在Javascript中,可以在函数中修改参数,如下所示
复制代码代码如下所示:
func1函数(名){
名称= 'lily;
警报(名称);
}
func1(杰克'); / /莉莉输出

再看一个例子
复制代码代码如下所示:
函数关系(N){
this.name = N;
}
功能的大脑(name){
fun1.call(这'lily);
警报(名称);
}
大脑(Jack); / /输出杰克

需要的功能要修改的参数调用百合的大脑,但它是不成功的。弹出的仍然是杰克。为什么你认为呢

事实上,需要有修改的大脑调用参数的能力,利用对方的财产
复制代码代码如下所示:
函数关系(){
争论。被叫。来电。论点{ 0 } = 'lily;
}
功能的大脑(name){
fun1.call(这名字);
警报(名称);
}
大脑(Jack); / /输出百合

可以看出,内部函数的外部函数调用堆栈是可见的,并且是可修改的。