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 = {}
    }
    未完,待续......
  • 相关阅读:
    11.组件-组件中的data和methods
    09.组件-创建组件的方式2
    10.组件-创建组件的方式3
    07.动画-列表动画
    08.组件-创建组件的方式1
    关于苹果iBeacon官方文档解析
    IOS-代码书写规范
    IOS- 1970ms时间计算
    关于tableview顶部留白问题
    IOS-网络请求数据解析道数组程序崩溃问题
  • 原文地址:https://www.cnblogs.com/zhishiyv/p/14611962.html
Copyright © 2011-2022 走看看