在JavaScript函数之后保留原始数组
这个问题在这里已经有了答案:
你应该在你的函数中克隆(创建一个你的数组的副本)
function bake_goods(my_pizza, my_pie){
var innerPizza = my_pizza.slice(0);
console.log(innerPizza);
console.log(my_pie);
delete innerPizza ['1'];
my_pie = "peach";
console.log(innerPizza );
console.log(my_pie);
}
数组和对象作为指向原始对象的指针传递。 如果您不想修改原稿,则需要先复印一份。
function bake_goods(my_pizza, my_pie) {
my_pizza = my_pizza.slice(0);
delete my_pizza[1];
}
“披萨”数组更改是因为该函数显然是按引用调用的。 该函数通过内存中的相同位置操作参数,以便函数外部的变量被初始化。您可以通过创建my_pizza数组及其元素的副本并使用它来避免这些不需要的更改。
链接地址: http://www.djcxy.com/p/20807.html