Jq $全局对象扩展

1.$.extend(src)
解释:参数为一个参数时,在jq全局对象中扩展属性或者函数。

$.extend({

		hello:function(){
			alert("Hello World!");
		},
		ok:function(){
			alert("我已经在jq全局对象中啦!!!");
		}
	})
			
		$.hello();
		$.ok();
重载原型
2.$.extend(boolean,dest,src1,src2,src3,....)

解释:boolean 参数布尔型,意思是是否深度拷贝,
     dest,src1,src2,src3 参数,意思是把后面的src1,src2,src3合并到dest参数中
     此时boolean发挥它的做用

如:
   $(function() {
			var result=$.extend(true,
			       {},
			       {name:"zhangsan",age:26,location:{address:"nc",phone:18679125671,status:2}},
		           {lastName:"lisi",job:"programe",location:{address:"wh",phone:12345678912}}
		        )
		console.log(result);
		})

咱们能够看到结果是javascript

{name:"zhangsan",age:26,location:{address:"nc",phone:18679125671,status:2}},
{lastName:"lisi",job:"programe",location:{address:"wh",phone:12345678912}}java

它们合并为一个对象,而且若是有重复的属性,后一个对象和覆盖前一个对象的属性值。由于boolean咱们设置为true,那么对象里的子对象和进行了合并。下面咱们看boolean为false.函数

$(function() {
			var result=$.extend(false,
			       {},
			       {name:"zhangsan",age:26,location:{address:"nc",phone:18679125671,status:2}},
		           {lastName:"lisi",job:"programe",location:{address:"wh",phone:12345678912}}
		        )
		console.log(result);
		})

从结果上咱们能够看出,boolean设置为false,location属性的值没有进行合并。直接由后面的覆盖了面的code

相关文章
相关标签/搜索