成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

可想實現(xiàn)一個自己的簡單jQuery庫?(五)

Code4App / 440人閱讀

摘要:這個版本我們要增加一個用的非常多的方法那就是我們知道不僅能遍歷數(shù)組還能遍歷對象首先我們需要一個對數(shù)組進行驗證的方法接著就是我們的重頭戲因為我們還可能遍歷數(shù)組對象如所以還需要一個判斷是否是數(shù)組對象在這應(yīng)該強調(diào)下的用法還是很多人不知道何時使用

Lesson-4

這個版本我們要增加一個用的非常多的方法!

那就是each!

我們知道each不僅能遍歷數(shù)組,還能遍歷對象.

首先我們需要一個對數(shù)組進行驗證的方法

function isArray(obj) {
    return Array.isArray(obj);
}

接著就是我們的重頭戲

Kodo.each = function(obj,callback) {
    var len = obj.length,
        constru = obj.constructor,
        i = 0;

    if(constru === window.f) {
        for (; i < len; i++) {
            var val = callback.call(obj[i],i,obj[i]);
            if(val === false) break;
        }
    } else if (isArray(obj)) {
        for (; i < len; i++) {
            var val = callback.call(obj[i],i,obj[i]);
            if(val === false) break;
        }
    } else {
        for( i in obj ) {
            var val = callback.call(obj[i],i,obj[i]);
            if(val === false) break;
        }
    }

};

因為我們還可能遍歷Kodo數(shù)組對象

f("div").each(function(index,item) {

})

所以還需要一個判斷 是否是Kodo數(shù)組對象

if(constru === window.f) {
    for (; i < len; i++) {
        var val = callback.call(obj[i],i,obj[i]);
        if(val === false) break;
    }
}

在這應(yīng)該強調(diào)下call的用法,還是很多人不知道call何時使用.

在我們的callback里 第一個參數(shù)是下標,第二個參數(shù)是當前的對象,然后this還要指向他自己

所以 callback.call(obj[i],i,obj[i]); 就是這樣寫 第一個參數(shù)是改變this指向,第二個參數(shù)是下標,第三個是自己本身

很簡單不是嗎?

既然你都看到這里了,還不給我一個star?!

github地址: https://github.com/MeCKodo/forchange/tree/master/lesson-4
可想造一個屬于你自己的jQuery庫?(四):http://segmentfault.com/a/1190000004001281

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/49658.html

相關(guān)文章

  • 可想實現(xiàn)一個自己簡單jQuery?()

    摘要:這個版本我們要增加一個用的非常多的方法那就是我們知道不僅能遍歷數(shù)組還能遍歷對象首先我們需要一個對數(shù)組進行驗證的方法接著就是我們的重頭戲因為我們還可能遍歷數(shù)組對象如所以還需要一個判斷是否是數(shù)組對象在這應(yīng)該強調(diào)下的用法還是很多人不知道何時使用 Lesson-4 這個版本我們要增加一個用的非常多的方法! 那就是each! 我們知道each不僅能遍歷數(shù)組,還能遍歷對象. 首先我們需要一個對數(shù)...

    mindwind 評論0 收藏0
  • 可想實現(xiàn)一個自己簡單jQuery?(六)

    摘要:這個版本新增個方法先給出代碼我們要仔細分辨下這個方法在中返回的都是什么對象到底是對象還是對象明白了這個后就很容易能寫出這個方法首先我們知道一般都會這樣寫查找下的返回的是數(shù)組對象而不是原生的對象那么我們就可以換個思路因為我們能拿到這個 Lesson-5 這個版本新增6個方法,find(),first(),last(),eq(),get(),ajax 先給出代碼 find : funct...

    Warren 評論0 收藏0
  • 可想實現(xiàn)一個自己簡單jQuery?(六)

    摘要:這個版本新增個方法先給出代碼我們要仔細分辨下這個方法在中返回的都是什么對象到底是對象還是對象明白了這個后就很容易能寫出這個方法首先我們知道一般都會這樣寫查找下的返回的是數(shù)組對象而不是原生的對象那么我們就可以換個思路因為我們能拿到這個 Lesson-5 這個版本新增6個方法,find(),first(),last(),eq(),get(),ajax 先給出代碼 find : funct...

    whinc 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<