哪一个是在javascript中复制对象的更好方法

时间:2016-10-18 23:29:22

标签: javascript object copy

目前我使用两种方法复制对象: 第一个是

let obj2 = {...obj}

第二个是

let obj2 = Object.assign({}, obj)

哪一个应该是推荐的?感谢

1 个答案:

答案 0 :(得分:0)

假设您正在使用Babel进行编译,它们基本相同:

var a = {...b};

编译成:

var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };

var a = _extends({}, b);

我认为对象扩展语法略好一些,因为如果您的环境不支持Object.assign,它仍然有效。