时间:2021-05-25
jq的extend()方法能很方便的实现扩展对象方法,语法如下:$.extend(obj1,boj2,obj3);
现在要实现的是:原生js实现复制对象,扩展对象,类似jq中的extend()方法,具体实例如下:
现有3个对象字面量:
实现目标:
复制o1对象,把 o2,o3的对象属性和方法都扩展进前面复制得到的对象中并输出。
<script>var o1={hello:1,old:555},o2 = {abc: 55555555,hello: 2,fun: function() {alert(111);}},o3={third:9999};function cloneObj(oldObj) { //复制对象方法if (typeof(oldObj) != 'object') return oldObj;if (oldObj == null) return oldObj;var newObj = new Object();for (var i in oldObj)newObj[i] = cloneObj(oldObj[i]);return newObj;};function extendObj() { //扩展对象var args = arguments;if (args.length < 2) return;var temp = cloneObj(args[0]); //调用复制对象方法for (var n = 1; n < args.length; n++) {for (var i in args[n]) {temp[i] = args[n][i];}}return temp;}var t=extendObj(o1,o2,o3);console.log(t);console.log(o1);console.log(o2);console.log(o3);</script>声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
如下复制代码代码如下:jQuery.extend=jQuery.fn.extend=function(){...};我们可以用$.extend去扩展自定义的对象
1.jquery.extend(object);为扩展jQuery类本身.为类添加新的方法。jquery.fn.extend(object);给jQuery对象
extend()是jQuery中一个重要的函数,作用是实现对对象的扩展,它经常用于jQuery插件的开发,jQuery内部也使用它来扩展属性方法,如上篇文章中讲
关于对象的继承,一般的做法是用复制法:Object.extend见protpotype.js的实现方法:复制代码代码如下:Object.extend=funct
针对上面的示例,我们可以调用jquery.fn.extend()方法来创建jquery对象方法。具体代码如下》复制代码代码如下:jQuery.fn.extend