首页 > 其他分享 >解决使用JSON.stringify时遇到的循环引用问题

解决使用JSON.stringify时遇到的循环引用问题

时间:2022-12-29 15:34:09浏览次数:47  
标签:stringify MessageChannel JSON 引用 msg new port2

利用  js MessageChannel 函数进行封装一个函数

新建一个MessageChannel的实例, 获取两个管道, 我们从管道1发送数据, 从管道2进行接收,我们这样就拿到新的数据,这样就能解决深拷贝循环引用问题,

 

function deepClone(obj){
  return new Promise((resolve)=> {
    const { port1, port2 } = new MessageChannel();
    port1.postMessage(obj);
    port2.onmessage =(msg)=>{
      resolve(msg.data);
    );
  })
}

 

标签:stringify,MessageChannel,JSON,引用,msg,new,port2
From: https://www.cnblogs.com/xzqyun/p/17012654.html

相关文章