-
promise作為一個模型,提供了一個在軟件工程中描述延時(或?qū)恚└拍畹慕鉀Q方案,背后的思想是:不是執(zhí)行一個方法,然后阻塞應用程序等待結(jié)果返回,而是返回一個promise對象來滿足未來值。查看全部
-
promise模式在任何時刻都處于以下三種狀態(tài)之一: 未完成(unfulfilled) 已完成(resolved) 拒絕(rejected)查看全部
-
function task(name) { var dtd = $.Deferred(); setTimeout(function() { dtd.resolve(name) }, 1000) return dtd; } $.when(task('任務一'), task('任務二')).done(function() { alert('成功') }) 代碼解釋: 把需要處理的異步操作,用Deferred對象給包裝一下,然后通過when方法收集異步的操作,最后再返回出done的成功。查看全部
-
Deferred 提供了一個抽象的非阻塞的解決方案(如異步請求的響應),它創(chuàng)建一個promise對象,其目的是在未來某個時間點返回一個響應。簡單來說就是一個異步/同步回調(diào)函數(shù)的處理方案。查看全部
-
我也看不懂的說,能講講原理嗎?別讓看這種很晦澀難懂的東西了查看全部
-
$.ajax({ url: "aaron.html", context: document }).done(function() { //成功執(zhí)行 }).fail(function() { //失敗執(zhí)行 );查看全部
-
jQuery.Callbacks參數(shù): 1、once: 確保這個回調(diào)列表只執(zhí)行.fire()一次。 2、memory: 保持以前的值,將添加到這個列表的后面的最新的值立即執(zhí)行調(diào)用任何回調(diào),類似一個遞延 Deferred。 3、unique: 確保一次只能添加一個回調(diào),即在列表中沒有重復的回調(diào)。 4、stopOnFalse: 當一個回調(diào)返回false 時中斷調(diào)用。查看全部
-
//添加回調(diào)函數(shù)至隊列 Observable.add(function() { //pocessData }) Observable.add(function() { $('aaron1').html(data.a) $('aaron2').html(data.b) $('aaron3').html(data.c) }) Observable.add(function() { //pocessOther }) $.ajax({ url: "test.html", context: document.body }).done(function(data) { Observable.fire(data) })查看全部
-
1、觀察者模式 (pub/sub) 的背后,總的想法是在應用程序中增強松耦合性,并非是在其它對象的方法上的單個對象調(diào)用。 2、一個對象作為特定任務或是另一對象的活動的觀察者,并且在這個任務或活動發(fā)生時,通知觀察者。 3、觀察者也被叫作訂閱者(Subscriber),它指向被觀察的對象,即被觀察者(Publisher 或 subject)。 4、當事件發(fā)生時,被觀察者(Publisher)就會通知觀察者(subscriber)。查看全部
-
回調(diào)函數(shù): 1、一個回調(diào)函數(shù)作為參數(shù)傳遞給另一個函數(shù)時,僅僅傳遞了函數(shù)定義,并沒有在參數(shù)中執(zhí)行函數(shù); 2、回調(diào)函數(shù)并不會馬上被執(zhí)行,它會在包含它的函數(shù)內(nèi)的某個特定時間點被“回調(diào)”。查看全部
-
迭代器特點: 1、訪問一個聚合對象的內(nèi)容而無需暴露它的內(nèi)部; 2、為遍歷不同的集合結(jié)構(gòu)提供一個統(tǒng)一的接口,從而支持同樣的算法在不同的集合結(jié)構(gòu)上進行操作; 3、遍歷的同時更改迭代器所在的集合結(jié)構(gòu)可能會導致問題。查看全部
-
迭代器是一個框架的重要設計。我們經(jīng)常需要提供一種方法順序用來處理聚合對象中各個元素,而又不暴露該對象的內(nèi)部,這也是設計模式中的迭代器模式(Iterator)。查看全部
-
回溯處理的設計 jQuery通過end()/addBack()實現(xiàn)回溯查看全部
-
通過extend()函數(shù)可以方便快速的擴展功能,不會破壞jQuery的原型結(jié)構(gòu),jQuery.extend = jQuery.fn.extend = function(){...}; 這個是連等,也就是2個指向同一個函數(shù),通過this來實現(xiàn)不同的功能。 1、fn與jQuery其實是2個不同的對象,jQuery.extend 調(diào)用的時候,this是指向jQuery對象(jQuery是函數(shù),也是對象),所以這里擴展在jQuery上。 2、jQuery.fn.extend 調(diào)用的時候,this指向fn對象,jQuery.fn 和jQuery.prototype指向同一對象,擴展fn就是擴展jQuery.prototype原型對象,因此這里增加的是原型方法即對象方法。查看全部
-
在javascript的世界中一共有四種上下文調(diào)用方式:方法調(diào)用模式、函數(shù)調(diào)用模式、構(gòu)造器調(diào)用模式、apply調(diào)用模式。 jQuery.extend調(diào)用的時候上下文指向的是jQuery構(gòu)造器; jQuery.fn.extend調(diào)用的時候上下文指向的是jQuery構(gòu)造器的實例對象。查看全部
舉報
0/150
提交
取消