以角度2创建深层复制

这个问题在这里已经有了答案:

  • 在JavaScript中深入克隆对象的最有效方法是什么? 57个答案

  • 只需使用以下功能:

    /**
     * Returns a deep copy of the object
     */
    
    public deepCopy(oldObj: any) {
        var newObj = oldObj;
        if (oldObj && typeof oldObj === "object") {
            newObj = Object.prototype.toString.call(oldObj) === "[object Array]" ? [] : {};
            for (var i in oldObj) {
                newObj[i] = this.deepCopy(oldObj[i]);
            }
        }
        return newObj;
    }
    

    尝试使用Lodash.js。 因为角度2没有任何深度复制的方法。 以供参考请参阅:https://lodash.com/docs#cloneDeep

    或者你可以使用这个javascript函数

    var copy = Object.assign({}, myObject);
    
    链接地址: http://www.djcxy.com/p/6951.html

    上一篇: Create deep copy in angular 2

    下一篇: Deep copying array of nested objects in javascript