深拷贝
第一种
function deepClone(obj) {
const objectMap = new Map();
const _objectMap = (value) =>{
const type = typeof value;
if (type !== 'object' || type === null) {
return value
}
if (objectMap.has(value)) {
return objectMap.get(value)
}
const result = Array.isArray(value) ? [] : {};
objectMap.set(value, result);
for (const key in value) {
result[key] = _objectMap(value[key])
}
return result
};
return _objectMap(obj)
}
第二种
function deepClone(obj) {
return new Promise((resolve) => {
const { port1, port2 } = new MessageChannel();
port1.postMessage(obj)
port2.onmessage = (msg) =>{
resolve(msg.data)
}
})
}
暂无标签
博主真是太厉害了!!!
看的我热血沸腾啊
怎么收藏这篇文章?
看的我热血沸腾啊https://www.ea55.com/
看的我热血沸腾啊www.jiwenlaw.com
看的我热血沸腾啊www.jiwenlaw.com
文章的确不错啊https://www.cscnn.com/