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

JavaScript ES5標(biāo)準(zhǔn)中新增的Array方法

 更新時(shí)間:2016年06月28日 09:42:40   作者:浪的詩(shī)人  
這篇文章主要介紹了JavaScript ES5標(biāo)準(zhǔn)中新增的Array方法 的相關(guān)資料,需要的朋友可以參考下

ES5中新增的不少東西,了解之對(duì)我們寫(xiě)JavaScript會(huì)有不少幫助,比如數(shù)組這塊,我們可能就不需要去有板有眼地for循環(huán)了。

ES5中新增了寫(xiě)數(shù)組方法,如下:

forEach (js v1.6)
map (js v1.6)
filter (js v1.6)
some (js v1.6)
every (js v1.6)
indexOf (js v1.6)
lastIndexOf (js v1.6)
reduce (js v1.8)
reduceRight (js v1.8)

1、js中常用的數(shù)組Array對(duì)象屬性:

如圖,其中用紅色圓圈標(biāo)記的部分,為ES5新增的屬性。


2、瀏覽器支持情況:

•IE:9+;
•Chrome;
•Firefox2+;
•Safari 3+;
•Opera 9.5+;

3、位置方法

ECMAScript5為數(shù)組定義了2個(gè)位置方法。indexOf(),lastIndexOf();

這兩個(gè)方法都接收兩個(gè)參數(shù):要查找的項(xiàng)和(可選的)表示查找起點(diǎn)位置的索引。

其中,indexOf()從數(shù)組的開(kāi)頭(位置0)開(kāi)始向后查找,lastIndexOf()則是從數(shù)組的末尾開(kāi)始向前查找。

這兩個(gè)方法都要返回要查找的項(xiàng)在數(shù)組中的位置,或者在沒(méi)有找到的情況下返回-1;

示例:

var numbers = [1,2,3,4,5,4,3,2,1];
alert(numbers.indexOf(4)); //4
alert(number.lastIndexOf(4)); //5
alert(number.indexOf(4,4)); //5
alert(number.lastIndexOf(4,4)); //3

4、迭代方法

ECMAScript5為數(shù)組定義了5個(gè)迭代方法。

4.1、every()

定義和用法:every() 方法用于檢測(cè)數(shù)組所有元素是否都符合指定條件(通過(guò)函數(shù)提供)。

every() 方法使用指定函數(shù)檢測(cè)數(shù)組中的所有元素:

•如果數(shù)組中檢測(cè)到有一個(gè)元素不滿足,則整個(gè)表達(dá)式返回 false ,且剩余的元素不會(huì)再進(jìn)行檢測(cè)。

•如果所有元素都滿足條件,則返回 true。

注意: every() 不會(huì)對(duì)空數(shù)組進(jìn)行檢測(cè)。

注意: every() 不會(huì)改變?cè)紨?shù)組。

描述:檢測(cè)數(shù)組 ages 的所有元素是否都大于 18 :

var ages = [32, 33, 16, 40];
function checkAdult(age) {
return age >= 18;
}
function myFunction() {
document.getElementById("demo").innerHTML = ages.every(checkAdult);
}

結(jié)果為:

false;

4.2、some()

定義和用法:some() 方法用于檢測(cè)數(shù)組中的元素是否滿足指定條件(函數(shù)提供)。

對(duì)數(shù)組中的每一項(xiàng)運(yùn)行給定的函數(shù),如果該函數(shù)對(duì)任一項(xiàng)都返回true,則返回true;

代碼如下:

var numbers = [1,2,3,4,5,4,3,2,1];
var someResult = numbers.some(function(item,index,array){//item指代數(shù)組值;index指代數(shù)組下標(biāo);array指代數(shù)組本身;
return (item>2);
});
alert(someResult);

結(jié)果為:

true;

4.3、filter()

定義和用法:filter() 方法創(chuàng)建一個(gè)新的數(shù)組,新數(shù)組中的元素是通過(guò)檢查指定數(shù)組中符合條件的所有元素。

對(duì)數(shù)組中的每一項(xiàng)運(yùn)行給定函數(shù),返回該函數(shù)會(huì)返回true的項(xiàng)的數(shù)組。

描述:要返回一個(gè)所有數(shù)值大于2的數(shù)組,代碼如下:

var numbers = [1,2,3,4,5,4,3,2,1];
var filterResult = numbers.filter(function(item,index,array){//item指代數(shù)組值;index指代數(shù)組下標(biāo);array指代數(shù)組本身;
return (item>2);
});
alert(filterResult );

結(jié)果為:

[3,4,5,4,3]
4.4、map()

定義和用法:map() 方法返回一個(gè)新數(shù)組,數(shù)組中的元素為原始數(shù)組元素調(diào)用函數(shù)處理后的值。

對(duì)數(shù)組中的每項(xiàng)運(yùn)行給定的函數(shù),返回每次函數(shù)調(diào)用的結(jié)果組成的數(shù)組。

描述:給數(shù)組中的每項(xiàng)乘以2,返回這些乘積組成的數(shù)組,代碼如下:

var numbers = [1,2,3,4,5,4,3,2,1];
var mapResult = numbers.map(function(item,index,array){//item指代數(shù)組值;index指代數(shù)組下標(biāo);array指代數(shù)組本身;
return item*2;
});
alert(mapResult );

結(jié)果為:

[2,4,6,8,10,8,6,4,2]
4.5、forEach()

定義和用法:對(duì)數(shù)組中的每一項(xiàng)運(yùn)行給定的函數(shù)。這個(gè)方法沒(méi)有返回值。

本質(zhì)上與使用for循環(huán)遍歷數(shù)組一樣的。代碼如下:

var numbers = [1,2,3,4];
numbers.forEach(function(item,index,array){
console.log(item);
});

結(jié)果為:

1
2
3
4

5、縮小方法

ECMAScript5新增兩個(gè)縮小數(shù)組的方法:reduce()和reduceRight();

這兩個(gè)方法多會(huì)迭代數(shù)組的所有項(xiàng),然后構(gòu)建一個(gè)最終返回的值。其中,reduce()方法從數(shù)組的第一項(xiàng)開(kāi)始,逐個(gè)遍歷到最后。

而reduceRight()則從數(shù)組的最后一項(xiàng)開(kāi)始,向前遍歷到第一項(xiàng)。這兩個(gè)方法都接收兩個(gè)參數(shù):一個(gè)在每一項(xiàng)上調(diào)用的函數(shù)和(可選的)作為縮小基礎(chǔ)的初始值。

傳給reduce()和reduceRight()的函數(shù)接收4個(gè)參數(shù):前一個(gè)值,當(dāng)前值,項(xiàng)的索引和數(shù)組對(duì)象。

描述:使用reduce()方法可以執(zhí)行求數(shù)組中所有值之和的操作。代碼如下:

var values = [1,2,3,4,5];
var sum =values.reduce(function(prev,cur,index,array){
return prev+cur;
});
alert(sum);

結(jié)果為:

15

以上所述是小編給大家介紹的JavaScript ES5標(biāo)準(zhǔn)中新增的Array方法的相關(guān)知識(shí),希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!

相關(guān)文章

  • JavaScript中promise.all和promise.race的區(qū)別詳解

    JavaScript中promise.all和promise.race的區(qū)別詳解

    Promise.all和Promise.race是JavaScript的兩種Promise處理方法,Promise.all要求所有Promise對(duì)象成功完成才返回成功,若有一個(gè)失敗則整體失敗,Promise.race返回第一個(gè)完成的Promise結(jié)果,需要的朋友可以參考下
    2024-09-09
  • js原生實(shí)現(xiàn)移動(dòng)端手指滑動(dòng)輪播圖效果的示例

    js原生實(shí)現(xiàn)移動(dòng)端手指滑動(dòng)輪播圖效果的示例

    下面小編就為大家分享一篇js原生實(shí)現(xiàn)移動(dòng)端手指滑動(dòng)輪播圖效果的示例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-01-01
  • JS字符串拼接的幾種常見(jiàn)方式總結(jié)

    JS字符串拼接的幾種常見(jiàn)方式總結(jié)

    最近有經(jīng)常用到連接字符串的方法,但是對(duì)整體的方法比較模糊,這里記錄一下,下面這篇文章主要給大家介紹了關(guān)于JS字符串拼接的幾種常見(jiàn)方式,需要的朋友可以參考下
    2022-11-11
  • BootStrap智能表單實(shí)戰(zhàn)系列(七)驗(yàn)證的支持

    BootStrap智能表單實(shí)戰(zhàn)系列(七)驗(yàn)證的支持

    這篇文章主要介紹了BootStrap智能表單實(shí)戰(zhàn)系列(七)驗(yàn)證的支持 ,凡是涉及到用戶編輯信息然后保存的頁(yè)面,都涉及到一個(gè)數(shù)據(jù)是否符合要求的檢查,需要客服端和服務(wù)器端的校驗(yàn)的問(wèn)題,本文介紹非常詳細(xì),具有參考價(jià)值,需要的朋友可以參考下
    2016-06-06
  • 一文徹底理解JavaScript原型與原型鏈

    一文徹底理解JavaScript原型與原型鏈

    這篇文章主要介紹了一文徹底理解JavaScript原型與原型鏈,JavaScript中有許多內(nèi)置對(duì)象,如:Object,?Math,?Date等,文章圍繞主題展開(kāi)主題詳情,具有一定的參考價(jià)值,需要的小伙伴可以參考一下
    2022-08-08
  • 在VSCode中進(jìn)行JavaScript調(diào)試的詳細(xì)流程

    在VSCode中進(jìn)行JavaScript調(diào)試的詳細(xì)流程

    在JavaScript開(kāi)發(fā)中,調(diào)試是一個(gè)關(guān)鍵的過(guò)程,它幫助我們理解和修復(fù)代碼中的問(wèn)題,Visual Studio Code(VSCode)以其豐富的擴(kuò)展和內(nèi)置調(diào)試工具,為JavaScript開(kāi)發(fā)者提供了強(qiáng)大的支持,本文將詳細(xì)介紹如何在VSCode中進(jìn)行JavaScript調(diào),需要的朋友可以參考下
    2024-07-07
  • JavaScript調(diào)用Activex控件的事件的實(shí)現(xiàn)方法

    JavaScript調(diào)用Activex控件的事件的實(shí)現(xiàn)方法

    最近在搞一個(gè)客戶端調(diào)用activex控件的開(kāi)發(fā)。一些實(shí)現(xiàn)方法小結(jié),需要的朋友可以參考下。
    2010-04-04
  • 詳解小程序原生使用ES7 async/await語(yǔ)法

    詳解小程序原生使用ES7 async/await語(yǔ)法

    這篇文章主要介紹了詳解小程序原生使用ES7 async/await語(yǔ)法,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-08-08
  • 動(dòng)態(tài)顯示可輸入的字?jǐn)?shù)提示還可以輸入的字?jǐn)?shù)

    動(dòng)態(tài)顯示可輸入的字?jǐn)?shù)提示還可以輸入的字?jǐn)?shù)

    這篇文章主要介紹了動(dòng)態(tài)顯示可輸入的字?jǐn)?shù)提示還可以輸入的字?jǐn)?shù),需要的朋友可以參考下
    2014-04-04
  • JSON傳遞bool類型數(shù)據(jù)的處理方式介紹

    JSON傳遞bool類型數(shù)據(jù)的處理方式介紹

    如果服務(wù)器端生成的JSON中有bool類型的數(shù)據(jù)時(shí),到客戶端解析時(shí)出現(xiàn)了小小的問(wèn)題,下面簡(jiǎn)單為大家介紹下正確的處理方式
    2013-09-09

最新評(píng)論

昆山市| 天津市| 茶陵县| 鹤山市| 平阳县| 元朗区| 榆中县| 盘山县| 红原县| 广宗县| 岳西县| 金堂县| 北流市| 岑溪市| 昆明市| 蓝山县| 永顺县| 广州市| 庆城县| 高台县| 巴塘县| 武冈市| 女性| 安西县| 天全县| 海林市| 昆明市| 安陆市| 灯塔市| 集安市| 谢通门县| 和静县| 家居| 彭山县| 阿拉善右旗| 西宁市| 陆川县| 林周县| 安新县| 静海县| 望城县|