天天看點

JavaScript Array對象indexOf()方法的實作

背景:JavaScript中Array對象的标準方法中,沒有indexOf()方法,可通過下面的代碼擴充。

if (!Array.prototype.indexOf) {
    Array.prototype.indexOf = function(elt) {
        var len = this.length >>> 0;
        var from = Number(arguments[1]) || 0;
        from = (from < 0) ? Math.ceil(from) : Math.floor(from);
        if (from < 0) from += len;
        for (; from < len; from++) {
            if (from in this && this[from] === elt) return from;
        }
        return - 1;
    };
}
           

繼續閱讀