zoukankan      html  css  js  c++  java
  • 实现JS数据拷贝

    实现JS数据拷贝

    实现一个函数 clone ,可以对JavaScript 中的 5种主要的数据类型(包括Number、String、Object、Array、Boolean)进行值复制。

    function clone(obj) {
      var o;
      switch(typeof obj){
        case "undefined":
            break;
    
        case "string":
            o =  obj + "";
            break;
    
        case "number":
            o = obj - 0;
            break;
    
        case  "boolean":
            o = obj;
            break;
    
        case "object":
            if(obj === null){
               o = null;
            }else{
              if(Object.prototype.toString.call(obj).slice(8,-1) === "Array"){
                  o = [];
                  for(var i = 0;i < obj.length; i++){
                    o.push(clone(obj[i]))
                   }
              }else{
                  o = {};
                  for (var k in obj){
                    o[k] = clone(obj[k])
                  }
              }
            }
    
            break;
    

        default:         o = obj;         break;  }

     return o; }

    (2)、对象的另一种深拷贝

    try {
       const obj2 = JSON.parse(JSON.stringify(obj))
    } catch (error) {
      const obj2 = {}
    }
    未完,待续......
  • 相关阅读:
    计算机网络-URL/URI/URN
    计算机网络-应用层之HTTP协议
    计算机网络-传输层-TCP之三次握手/四次握手
    requests之一:HTTP请求 状态码
    python排序中sort()与sorted()的用法与区别
    列表(list)之三 -如何较为均匀的将任意字符串按指定组数分组,方差最少
    列表(list)之二 -运用篇 -快速生成规律性列表
    DES加密解密
    c# json转Dictionary字典
    导出Excel事例
  • 原文地址:https://www.cnblogs.com/zhishiyv/p/14611962.html
Copyright © 2011-2022 走看看