javascript map遍历之后返回的数组是深拷贝吗

2025-05-24 07:28:59
推荐回答(1个)
回答1:

是深拷贝,返回的是一个全新的数组,与原来的数组并存。

比如:

var a = [1, 2, 3];
var b = a.map(function(currentValue, index, arr) {
    return currentValue * 2;
});
console.log(a);
console.log(b);

分别输出[1, 2, 3]和[2, 4, 6]。

JS中绝大多数函数都是属于深拷贝的,一般不会对原对象执行操作,而是将处理结果通过返回值返回的。