js深拷贝

export function deepClone(data) {

    if (typeof data !== 'object' || typeof data == 'function' || data === null) {

        return data

    }

    let item

    if (Array.isArray(data)) {

        item = []

    }

    if (!Array.isArray(data)) {

        item = {}

    }

    for (let i in data) {

        if (Object.prototype.hasOwnProperty.call(data, i)) {

            item[i] = deepClone(data[i])

        }

    }

    return item

}

你可能感兴趣的:(js深拷贝)