jQuery.extend()方法做用是,用一個或多個其餘對象來擴展一個對象。
一般使用格式以下:
jQuery.extend(dest,src1,src2,src3...);
上述代碼含義是:將src一、src二、src3合併到dest中,並返回dest。
示例:數組
var dest = {name:'zhu',age:'15'}; var src1 = {name:'zhang',age:'18'}; var src2 = {name:'zhou',age:'25'}; var src3 = {num:15,city:'hongkong'}; var src4 = {grade:98,course:'math'}; $.extend(dest,src3,src4); console.log(dest);
此時控制檯輸出的合併後的dest以下:spa
注意到jQuery.extend()方法是會改變被拓展的對象的,若是不想改變原對象,能夠把第一個參數設置爲{}。
在本文的開頭有提到過jQuery.extend()方法拓展的是對象,其實在JS裏面數組也是對象,如:插件
var dest = {name:'zhu',age:'15'}; var src = [1,2]; $.extend(dest,src); console.log(dest);
控制檯輸出的dest爲:code
此時會把數組的索引值當作屬性進行合併。
若是該方法裏面兩個參數都是數組呢?對象
var dest = [1,2]; var src = [3,4]; $.extend(dest,src); console.log(dest);
控制檯輸出的dest爲:blog
若是jQuery.extend()方法省略了dest參數,則表示將src合併到jQuery全局對象中去。示例以下:索引
$.extend({ test1:function(){alert('hello world');} }); $.test1(); //彈出hello world $.extend({ test2:'hello world' }); alert($.test2); //彈出hello world
須要注意的是,jQuery.fn.extend(object)是擴展 jQuery 元素集來提供新的方法(一般用來製做插件),不要和jQuery.extend()方法弄混淆。圖片