注册 登录  
 加关注
查看详情
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

Copper peas ' Bolg

Keep On Moving...This Is My Life...

 
 
 

日志

 
 

【整理】 js对象的克隆与长度  

2011-09-27 17:39:36|  分类: javascript |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
 <head>
  <title> 对象的克隆与长度 </title>
  <meta name="Generator" content="EditPlus">
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  <script type="text/javascript" src="jquery-1.5.1.js"></script>
 </head>
 <script type="text/javascript">
  
   //深度克隆【增加基本属性】
   Object.prototype.Clone = function(){
  var objClone;
  if (this.constructor == Object){
   objClone = new this.constructor();
  }else{
   objClone = new this.constructor(this.valueOf());
  }
  for(var key in this){
   if ( objClone[key] != this[key] ){
    if ( typeof(this[key]) == 'object' ){
     objClone[key] = this[key].Clone();
    }else{
     objClone[key] = this[key];
    }
   }
  }
  objClone.toString = this.toString;
  objClone.valueOf = this.valueOf;
  return objClone;
  }

  var objok  = {debug:"debugok"}; 
  var objok1 = objok.Clone();     
  var objok2 = objok.Clone();     
   objok1.debug="debugok1";
         console.log(objok1);
      console.log(objok2);
    
     //判断不包含原型链对象长度
     var testobj = {one:"one",two:"two",three:"three"};
  Object.prototype.objlength = function(){
       var objlen = 0;
    console.log(this);
    for(var key in this)
    {
       if (this.hasOwnProperty(key)){
        objlen++;
    }
    }
    return objlen;
  }
  console.log(testobj.objlength());

 </script>
 </head>
<body>

</body>

</html>

  评论这张
 
阅读(209)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018