手记

jQuery语法整理1——jQuery.extend()

jQuery.extend()函数用于将一个或多个对象的内容合并到目标对象。

语法

jQuery.extend( target [, object1 ] [, objectN... ] )
jQuery.extend( [ deep ], target , object1 [, objectN... ] )

参数说明

参数名 描述
deep 可选/Boolean类型指示是否深度合并对象,默认为false。如果该值为true,且多个对象的某个同名属性也都是对象,则该"属性对象"的属性也将进行合并。
target Object类型目标对象,其他对象的成员属性将被复制到该对象上。
object1 可选/Object类型第一个被合并的对象。
objectN 可选/Object类型第N个被合并的对象。

代码示例

	var object1 = {
		apple: 0,
		banana: {weight: 52, price: 100},
		cherry: 97
	};
	var object2 = {
		banana: {price: 200},
		durian: 100
	};
	/* object2 合并到 object1 中 */
	$.extend(object1, object2);

	/*上段代码运行输出结果为:
	{
	      apple:0,
	      banana: {price: 200},
		  cherry: 97,
	      durian: 100
	}
		合并的时候,如果两个对象里含有相同的属性,后面的属性值会覆盖前面的
		如果需要对象属性值合并,可以用深度复制的方式
		$.extend(true, object1, object2);
	*/

在开发过程中,$.extend经常用于合并默认值和给定的参数值

	var defaults = {
		key1: value1,
		key2: value2
	}
    var options = {
		key1: value3
    }

    var settings = $.extend({},defaults,options);
   /* 
   {
        key1: value3,
        key2: value2
    }
  */

0人推荐
随时随地看视频
慕课网APP