简单实现深拷贝工具函数

const type= obj =>{
var toString = Object.prototype.toString;
var map ={
'[object Array]' :'array,
'[object Object]':'object'
}
return map[toString.call(obj)]
}

cosnt deepClone = data =>{
      var t = type( data)
            var i ;
            var o;
            var length;
            if( t ==='obejct'){
                  o = {}

            }else if ( t == 'array'){
                   o= []
            }
            if( t === 'array'){
               for( let i=0,length =data.length ;i<length;i++){
                       o.push(  deepClone(data[i])
                 }
      return o;
            }
            if(t ===‘object‘){
               for( let item in data){
                     o[item] = deepClone(data[i]);
                 }
              return o
            }

}

猜你喜欢

转载自blog.51cto.com/14582569/2546039
今日推荐