JavaScript自定義超時API代碼實例
API是提供給不同語百言的一個接口,也就是對應的函數里面提供了相應的方法。我們只要用js的語法去調用想要的功能就可以。例如度js里面的BOM有screen的方法,他就是瀏覽器提供給我們的接口,能夠對瀏覽器進行操作。
實現一個Ajax請求時回調超時一個函數
function timeoutify(fn,delay) { var intv = setTimeout( function(){// 設置超時定時器 intv = null; fn( new Error( 'Timeout!' ) ); }, delay ); return function() { // 還沒有超時? if (intv) { clearTimeout( intv );// 取消 intv 定時器 fn.apply( this, arguments );// 通過apply將返回回來的數據綁定到自定義的fn函數上, /*fn( null, arguments[1] ); // 如果對apply使用原理不了解可以使用該方法*/ } // argument 是獲取調用回調函數的實參 };}// 以下是使用方式:// 使用'error-first 風格' 回調設計 function foo(err,data) { if (err) { console.error( err ); } else { console.log( data ); }}ajax( 'http://some.url.1', timeoutify( foo, 500 ) );
自定義一個ajax回調函數:
function ajax(url, fun) { setTimeout(function() { fun(null, 11) }, 1000);// 1秒后執行回調函數 };
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。
相關文章: