Javascript 如何使用此方法编写深度克隆?

Javascript 如何使用此方法编写深度克隆?,javascript,underscore.js,Javascript,Underscore.js,在这里: 显然有很多方法可以做到这一点,但我想使用本文中第二个最好的答案,因为它不使用jQuery 这是我的第一次尝试。如果这对代码审查更好,请迁移,但这是一个非常小的方法 Pub.cloneDeep = function (obj) { _.each(nativeSlice.call(arguments, 1), function (val) { _.each(val, function (val_inner, key) { obj[key]

在这里:

显然有很多方法可以做到这一点,但我想使用本文中第二个最好的答案,因为它不使用jQuery

这是我的第一次尝试。如果这对代码审查更好,请迁移,但这是一个非常小的方法

Pub.cloneDeep = function (obj) {
    _.each(nativeSlice.call(arguments, 1), function (val) {
        _.each(val, function (val_inner, key) {
            obj[key] = JSON.parse(JSON.stringify(val_inner));
        });
    });
    return obj;
};

根据评论,该方法需要验证,以确保对象由JSON可以处理的类型组成-它们可以在这里找到-www.JSON.org-在旁边的白框上

您是在寻找克隆还是扩展方法?使用JSON中介的最大缺点可能是丢失了所有对象类型和方法。是的,有很多方法可以做到这一点。请说明您对应克隆的对象类型的确切要求,以及您希望优化的对象。@user3293653请看。