Javascript对象Clone
前几日在园子里看到某位朋友的文章里实现JS对象的克隆.
今天在此把代码重写一遍<重写哦,呵>
今天在此把代码重写一遍<重写哦,呵>
1 Object.prototype.Clone=function()
2 {
3 var objClone=new this.constructor(); //这里是创建一个与被Clone对象相同结构的对象
4 for(var key in this)
5 {
6 if(objClone[key]!=this[key])
7 {
8 if(typeof(this[key])=='object')
9 {
10 objClone[key]=this[key].Clone();
11 }
12 else
13 {
14 objClone[key]=this[key];
15 }
16 }
17 }
18 if(!objClone || (''+objClone)=='')
19 {
20 return (new String(this)+objClone)?this:objClone;
21 }
22 else
23 {
24 objClone.toString=this.toString;
25 return objClone;
26 }
27 }
2 {
3 var objClone=new this.constructor(); //这里是创建一个与被Clone对象相同结构的对象
4 for(var key in this)
5 {
6 if(objClone[key]!=this[key])
7 {
8 if(typeof(this[key])=='object')
9 {
10 objClone[key]=this[key].Clone();
11 }
12 else
13 {
14 objClone[key]=this[key];
15 }
16 }
17 }
18 if(!objClone || (''+objClone)=='')
19 {
20 return (new String(this)+objClone)?this:objClone;
21 }
22 else
23 {
24 objClone.toString=this.toString;
25 return objClone;
26 }
27 }
<h3>
心静似高山流水不动,心清若巫峰雾气不沾。
</h3>
心静似高山流水不动,心清若巫峰雾气不沾。
</h3>