扩展()方法是实现扩展JQ对象的方法很方便,和语法如下:美元。延长(obj1,boj2,OBJ3);

我们要意识到现在是:原生js实现复制对象,扩展对象,类似于延长()在JQ的方法,和具体的例子如下:

现有的3个对象文字数量:




VaR O1 = {你好:1,老:555 },
O2 = {
美国广播公司:55555555,
你好:2,
乐趣:函数(){
警报(111);
}
},
O3 =第三:9999 };


实现目标:

复制对象和延长O1,O2的对象的属性和方法,O3已复制和输出对象。



VaR O1 = {你好:1,老:555 },
O2 = {
美国广播公司:55555555,
你好:2,
乐趣:函数(){
警报(111);
}
},
O3 =第三:9999 };
功能cloneobj(oldobj){ / /复制对象的方法
如果(typeof(oldobj)!= 'object)返回oldobj;
如果(oldobj = = null)返回oldobj;
无功newobj =新的对象();
对于(VAR我oldobj)
我newobj { } = cloneobj(oldobj {我});
返回newobj;
};
功能(extendobj){ / /扩展对象
var args =参数;
如果(args.length<2)返回;
VaR的温度= cloneobj(args { 0 }); / /调用复制对象的方法
对于(n = 1 n VaR;<< args.length;n + +){
对于(var i args中{ }){
温度{我} = { } }和{;
}
}
回复;
}
var t = extendobj(O1,O2,O3);
console.log(T);
console.log(O1);
console.log(O2);
console.log(O3);