最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

JavaScript 5 新增 Array 方法實現(xiàn)介紹

 更新時間:2012年02月06日 11:42:29   作者:  
JavaScript 5 發(fā)布有一段時間了,Array 對象新增了很多方法。但在老版本的瀏覽器上還不能使用,得益于 JavaScript 的動態(tài)可擴(kuò)展性,我實現(xiàn)了這些方法,在此曬出來與君共勉
復(fù)制代碼 代碼如下:

/*!
* jLip JavaScript Library v0.1
*
* Copyright 2012, Lip2up (lip2up@qq.com)
* Just for free use, NO LICENSE
*/
(function() {
function extend(target, props) {
for (var m in props) {
if (target[m] === undefined) target[m] = props[m];
}
}
var fns = { every: 1, some: 2, forEach: 3, map: 4, filter: 5 },
reduceError = 'Reduce of empty array with no initial value';
function each(fn, _this, kind) {
var len = this.length, ret = kind == fns.filter ? []
: kind == fns.map ? Array(len) : undefined,
find = kind == fns.some, i, v;
for (i = 0; i < len; i++) {
if (this[i] !== undefined) {
v = fn.call(_this, this[i], i, this);
switch (kind) {
case fns.every:
case fns.some:
if (v === find) return find;
break;
case fns.map:
ret[i] = v;
break;
case fns.filter:
if (v === true) ret[ret.length] = this[i];
break;
}
}
}
return kind >= fns.forEach ? ret : !find;
}
function reduce(fn, init, right) {
var len = this.length, i, prev, inc = right ? -1 : 1;
if (len == 0 && init === undefined)
throw TypeError(reduceError);
for (i = right ? len - 1 : 0, prev = init;
prev === undefined && (right ? i >= 0 : i < len);
i += inc) {
prev = this[i];
}
if (prev === undefined && i == (right ? -1 : len))
throw TypeError(reduceError);
for (; (right ? i >= 0 : i < len); i += inc) {
if (this[i] !== undefined)
prev = fn(prev, this[i], i, this);
}
return prev;
}
extend(Array.prototype, {
every: function(fn, _this) {
return each.call(this, fn, _this, fns.every);
},
some: function(fn, _this) {
return each.call(this, fn, _this, fns.some);
},
forEach: function(fn, _this) {
return each.call(this, fn, _this, fns.forEach);
},
map: function(fn, _this) {
return each.call(this, fn, _this, fns.map);
},
filter: function(fn, _this) {
return each.call(this, fn, _this, fns.filter);
},
reduce: function(fn, init) {
return reduce.call(this, fn, init);
},
reduceRight: function(fn, init) {
return reduce.call(this, fn, init, true);
}
});
})();

相關(guān)文章

  • 關(guān)于javascript的一些知識以及循環(huán)詳解

    關(guān)于javascript的一些知識以及循環(huán)詳解

    下面小編就為大家?guī)硪黄P(guān)于javascript的一些知識以及循環(huán)詳解。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-09-09
  • JS選項卡動態(tài)替換banner圖片路徑的方法

    JS選項卡動態(tài)替換banner圖片路徑的方法

    這篇文章主要介紹了JS選項卡動態(tài)替換banner圖片路徑的方法,涉及javascript操作文件css樣式的相關(guān)技巧,非常簡單實用,需要的朋友可以參考下
    2015-05-05
  • js 取時間差去掉周六周日實現(xiàn)代碼

    js 取時間差去掉周六周日實現(xiàn)代碼

    js 求時間差在生活中經(jīng)常會觸及到,本文整理了一些,希望可以幫助有需求的朋友可以,而起還可以實現(xiàn)去掉周六周日這些東東,廢話不多說,進(jìn)入正題
    2012-12-12
  • JavaScript中arguments和this對象用法分析

    JavaScript中arguments和this對象用法分析

    這篇文章主要介紹了JavaScript中arguments和this對象用法,結(jié)合實例形式較為詳細(xì)的分析了arguments對象和this對象的功能、常見用法及相關(guān)操作注意事項,需要的朋友可以參考下
    2018-08-08
  • 跨域表單提交狀態(tài)的變相判斷代碼

    跨域表單提交狀態(tài)的變相判斷代碼

    通過表單在iframe內(nèi)向一個跨域的url提交的時候,如何判斷提交成功了呢?這個,基本上,很難,因為瀏覽器安全沙箱的限制,我們沒有辦法通過獲得iframe內(nèi)部不同域頁面的信息。
    2009-11-11
  • D3.js實現(xiàn)餅圖,環(huán)圖,玫瑰圖的繪制

    D3.js實現(xiàn)餅圖,環(huán)圖,玫瑰圖的繪制

    這篇文章主要為大家介紹了如何利用D3.js中的d3.pie和d3.arc實現(xiàn)餅圖、環(huán)圖和玫瑰圖的繪制,文中的實現(xiàn)方法講解詳細(xì),感興趣的可以嘗試一下
    2022-11-11
  • JavaScript 滾輪事件使用說明

    JavaScript 滾輪事件使用說明

    用過 Google 地圖的人可能都很熟悉,通過滾動滾輪可以對地圖進(jìn)行縮放,非常地方便。適當(dāng)?shù)厥褂脻L輪事件可以帶來不錯的用戶體驗。
    2010-03-03
  • 給easyui的datebox控件添加清空按鈕的實現(xiàn)方法

    給easyui的datebox控件添加清空按鈕的實現(xiàn)方法

    下面小編就為大家?guī)硪黄oeasyui的datebox控件添加清空按鈕的實現(xiàn)方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-11-11
  • Bootstrap 3 按鈕標(biāo)簽實例代碼

    Bootstrap 3 按鈕標(biāo)簽實例代碼

    這篇文章主要介紹了Bootstrap 3 按鈕標(biāo)簽實例代碼,非常不錯,具有參考借鑒價值,需要的朋友可以參考下
    2017-02-02
  • 全解跨域請求問題處理方法及分析

    全解跨域請求問題處理方法及分析

    這篇文章主要為大家介紹了全解跨域請求問題處理方法及分析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪<BR>
    2023-07-07

最新評論

临高县| 阳谷县| 南雄市| 湖州市| 博乐市| 克什克腾旗| 银川市| 珲春市| 桂阳县| 韶山市| 屏边| 沧州市| 长治市| 新宾| 永靖县| 漾濞| 林芝县| 陆川县| 衡东县| 安达市| 鄂托克前旗| 仪征市| 古田县| 安溪县| 疏勒县| 古蔺县| 萝北县| 新疆| 泰顺县| 岳普湖县| 油尖旺区| 三原县| 金阳县| 汪清县| 集贤县| 剑川县| 沭阳县| 手游| 绥宁县| 道真| 江津市|