js数据克隆方法

1.JSON.parse(JSON.stringify(obj));
const copyobj = JSON.parse(JSON.stringify(obj));  // 函数不能clone
2....运算符
const copyobj = { ...obj }; // 只能clone 第一层
3.structuredClone方法
const copyobj = window.structuredClone(obj); // 函数不能clone
4.创建一个函数克隆所有元素
function clone(obj) {
     var o;
     if (typeof obj == "object") {
         if (obj === null) {
             o = null;
         } else {
             if (obj instanceof Array) {
                 o = [];
                 for (var i = 0, len = obj.length; i < len; i++) {
                     o.push(clone(obj[i]));
                 }
             } else {
                 o = {};
                 for (var j in obj) {
                     o[j] = clone(obj[j]);
                 }
             }
         }
     } else {
         o = obj;
     }
     return o;
 } 
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Javascript 客户端脚本语言,用于用户交互 特点: 弱类型 解释型 基于对象 事件驱动 单线程/异步(ca...
    一步丶丿麟阅读 1,207评论 0 0
  • 开场 最近科学技术日新月异,各种技术百花齐放,我想总结一下 JS clone对象的方法和用法(哎,说了这么多跟我想...
    竹剑道阅读 3,541评论 0 0
  • 33、JS中的本地存储 把一些信息存储在当前浏览器指定域下的某一个地方(存储到物理硬盘中)1、不能跨浏览器传输:在...
    萌妹撒阅读 6,481评论 0 2
  • 方便起见不分parameter[形参,出现在函数定义中]和argument[实参,其值为传入函数的值],一律当作a...
    东月三二阅读 3,056评论 0 0
  • 1. javascript的typeof返回哪些数据类型. 答案:string,boolean,number,un...
    townof1997阅读 1,810评论 0 0

友情链接更多精彩内容