亚洲国产日韩欧美在线a乱码,国产精品路线1路线2路线,亚洲视频一区,精品国产自,www狠狠,国产情侣激情在线视频免费看,亚洲成年网站在线观看

jQuery學(xué)習(xí)筆記之jQuery的分析

時(shí)間:2020-11-09 16:45:29 jQuery Mobile 我要投稿

關(guān)于jQuery學(xué)習(xí)筆記之jQuery的分析

  deep是布爾值,表示是否進(jìn)行深度合并,默認(rèn)是false,不執(zhí)行深度合并.

關(guān)于jQuery學(xué)習(xí)筆記之jQuery的分析

  通過這種方式可以在jQuery或jQuery.fn上添加新的屬性和方法,jQuery的其他模塊大都是這么實(shí)現(xiàn)的.

  給jQuery添加擴(kuò)展時(shí)用$.extend()

  如:jQuery.extend({add:function(a,b){return a+b}})

  使用:$.add(1,3)=====>4;

  給jQuery實(shí)例對(duì)象添加擴(kuò)展時(shí)用$.fn.extend();

  $.fn.extend({gys:function(){$(this).css("color","red")}});

  調(diào)用:$("div.guo").gys();

  因?yàn)閰?shù)的個(gè)數(shù)是不確定的,所以沒有列出可接受的具體參數(shù).

  options:指向某個(gè)源對(duì)象.

  name:某個(gè)源對(duì)象的某個(gè)屬性名.

  src:目標(biāo)對(duì)象的某個(gè)屬性的原始值.

  copy:某個(gè)源對(duì)象的某個(gè)屬性的值

  copyIsArray:指示copy是否是數(shù)組

  clone:深度復(fù)制時(shí)原始值的`修正值.

  target:目標(biāo)對(duì)象.

  i:源對(duì)象的起始下標(biāo).

  length:參數(shù)的個(gè)數(shù),用于修正變量target.

  deep:是否執(zhí)行深度復(fù)制.

  333~338:如果第一個(gè)參數(shù)是布爾值,則把target賦值給deep,target在重新獲取值,把第二個(gè)參數(shù)賦給target.

  這個(gè)時(shí)候i值從一開始的1變成了2.表示源對(duì)象本來(lái)是從第二個(gè)元素開始的,現(xiàn)在變成了第三個(gè)元素了.這段代碼結(jié)合

  327行代碼就知道為什么會(huì)有這個(gè)if語(yǔ)句了.原來(lái)函數(shù)extend在執(zhí)行的時(shí)候,不管參數(shù)情況如何,首先給target和i賦值.

  然后再后面修正.

  341~343:如果目標(biāo)對(duì)象target不是對(duì)象,不是函數(shù),則targeted={};

  346~349:length和i相等時(shí),表示沒有傳入objcet1,...之類的參數(shù),

  這個(gè)時(shí)候把this當(dāng)前對(duì)象(jQuery或jQuery.fn)作為目標(biāo)對(duì)象,在把i減一.從而使傳入的對(duì)象當(dāng)作源對(duì)象.

  351行開始循環(huán),i表示開始源對(duì)象的下標(biāo),是一個(gè)非常巧妙的用法.

  353行也很精彩,它把獲取源對(duì)象和對(duì)源對(duì)象的判斷放在了一條語(yǔ)句中,只有源對(duì)象不為空時(shí)才會(huì)執(zhí)行.

  354~362行,變量src是原始值,變量copy是復(fù)制值.如果target和copy引用相同,為了遍歷時(shí)死循環(huán),

  因此不會(huì)覆蓋目標(biāo)對(duì)象的同名屬性.如果注釋掉360行,下面的代碼會(huì)出現(xiàn)異常.

  var obj={};

  obj.n1=obj;

  $.extend(true,obj,{n2:obj});

  在不同瀏覽器中會(huì)出項(xiàng)不同的報(bào)錯(cuò),但是都無(wú)一例外的出現(xiàn)卡屏很久的現(xiàn)像.

  365~372行,如果是深度合并,且復(fù)制copy是普通javascript對(duì)象或數(shù)組,則遞歸合并.

  378~380行,如果不是深度合并,并且copy不是undefined,則直接覆蓋目標(biāo)對(duì)象的同名屬性.

  

【關(guān)于jQuery學(xué)習(xí)筆記之jQuery的分析】相關(guān)文章:

1.關(guān)于jQuery學(xué)習(xí)筆記之jQuery的動(dòng)畫

2.jQuery學(xué)習(xí)筆記之Helloworld教程

3.jQuery 源碼分析筆記小結(jié)

4.jquery中ajax學(xué)習(xí)筆記

5.jquery動(dòng)畫效果學(xué)習(xí)筆記簡(jiǎn)介

6.我學(xué)習(xí)jquery的經(jīng)驗(yàn)

7.jQuery的DOM操作筆記

8.Jquery實(shí)戰(zhàn)