【HAVENT原創】讓 IE6 ~ IE8 瀏覽器也支持 map 和 filter 方法

Array.prototype 擴展可讓 IE6 ~ IE8 瀏覽器也支持 map 的方法:瀏覽器

if (typeof Array.prototype.map != "function") {
  Array.prototype.map = function (fn, context) {
    var arr = [];
    if (typeof fn === "function") {
      for (var k = 0, length = this.length; k < length; k++) {      
         arr.push(fn.call(context, this[k], k, this));
      }
    }
    return arr;
  };
}

讓 IE6 ~ IE8 瀏覽器也支持 filter 的方法:this

if (typeof Array.prototype.filter != "function") {
  Array.prototype.filter = function (fn, context) {
    var arr = [];
    if (typeof fn === "function") {
       for (var k = 0, length = this.length; k < length; k++) {
          fn.call(context, this[k], k, this) && arr.push(this[k]);
       }
    }
    return arr;
  };
}
相關文章
相關標籤/搜索