亚洲中字慕日产2020,大陆极品少妇内射AAAAAA,无码av大香线蕉伊人久久,久久精品国产亚洲av麻豆网站

資訊專欄INFORMATION COLUMN

js 中的迭代方法

fsmStudy / 2103人閱讀

摘要:根據(jù)使用的方法不同,這個(gè)函數(shù)執(zhí)行后的返回值可能會(huì)也可能不會(huì)影響方法的返回值。對(duì)數(shù)組中的每一項(xiàng)運(yùn)行給定函數(shù),返回改函數(shù)會(huì)返回的項(xiàng)組成的數(shù)組。

ECMAScript 為數(shù)組定義了五個(gè)迭代方法。
每個(gè)方法都接收兩個(gè)參數(shù):要在每一項(xiàng)上運(yùn)行的函數(shù)和(可選的)運(yùn)行該函數(shù)的作用域?qū)ο蟆绊憈his的值。
傳入這些方法中的函數(shù)會(huì)接收三個(gè)參數(shù):數(shù)組項(xiàng)的值、該項(xiàng)在數(shù)組中的位置和數(shù)組對(duì)象本省。
根據(jù)使用的方法不同,這個(gè)函數(shù)執(zhí)行后的返回值可能會(huì)也可能不會(huì)影響方法的返回值。
以下是這五個(gè)迭代方法的作用。

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

2、some(); 對(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 everyResult = numbers.every(function(item, index, array){
        return (item > 3);
    })
    console.log(everyResult);    //false
    
    var someResult = numbers.some(function(item, index, array) {
        return (item > 3);
    })
    console.log(someResult);    //true
3、filter(); 對(duì)數(shù)組中的每一項(xiàng)運(yùn)行給定函數(shù),返回改函數(shù)會(huì)返回true的項(xiàng)組成的數(shù)組。
    var numbers = [1, 2, 3, 4, 5, 4, 3, 2, 1];
    var filterResult = numbers.filter(function(item, index, array) {
        return (item > 3);
    })
    console.log(filterResult);    //[4, 5, 4]
4、map(); 對(duì)數(shù)組中的每一項(xiàng)運(yùn)行給定函數(shù),返回每次函數(shù)調(diào)用的結(jié)果組成的數(shù)組。
    var numbers = [1, 2, 3, 4, 5, 4, 3, 2, 1];
    var mapResult = numbers.map(function(item, index, array) {
        return item * 2;
    })
    console.log(mapResult);    //[2, 4, 6, 8, 10, 8, 6, 4, 2]
5、forEach(); 對(duì)數(shù)組中的每一項(xiàng)運(yùn)行給定的函數(shù),該方法沒有返回值,本質(zhì)上于使用for循環(huán)迭代數(shù)組一樣。
    var numbers = [1, 2, 3, 4, 5, 4, 3, 2, 1];
    numbers.forEach(function(item, index, array) {
        //執(zhí)行某些操作
    })

未完待續(xù)。。。

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

轉(zhuǎn)載請(qǐng)注明本文地址:http://www.ezyhdfw.cn/yun/83684.html

相關(guān)文章

  • js中的常見的循環(huán)迭代:for loop, forEach, for...in... for...

    摘要:下面就總結(jié)下中常見的幾種循環(huán)方法。因?yàn)檠h(huán)將遍歷對(duì)象本身的所有可枚舉屬性,以及對(duì)象從其構(gòu)造函數(shù)原型中繼承的屬性。上也明確提示不應(yīng)該用于迭代一個(gè),其中索引順序很重要。 引言 平時(shí)工作中循環(huán)的使用場(chǎng)景可以說(shuō)是非常之多了,昨天改別人代碼時(shí)候有位同事非常喜歡用ES6等新特性,一個(gè)數(shù)組的遍歷全部都是用for...of...,然后業(yè)務(wù)需求要用到數(shù)組中的序號(hào)index值,就很尷尬了,我只能改回for...

    Leo_chen 評(píng)論0 收藏0
  • JS迭代器模式《JavaScript設(shè)計(jì)模式與開發(fā)實(shí)踐》閱讀筆記

    摘要:但實(shí)際中,內(nèi)部迭代器和外部迭代器兩者并無(wú)優(yōu)劣。迭代器并不只迭代數(shù)組迭代器模式不僅能迭代數(shù)組,還可以迭代一些類數(shù)組對(duì)象。晚安了,參考設(shè)計(jì)模式與開發(fā)實(shí)踐曾探本文作者本文鏈接迭代器模式設(shè)計(jì)模式與開發(fā)實(shí)踐閱讀筆記 迭代器模式:一個(gè)相對(duì)簡(jiǎn)單的模式,目前絕大多數(shù)語(yǔ)言都內(nèi)置了迭代器,以至于大家都不覺得這是一種設(shè)計(jì)模式 迭代器模式 迭代器模式指提供一種方法訪問(wèn)一個(gè)聚合對(duì)象中的各個(gè)元素,而又不需要暴露該...

    djfml 評(píng)論0 收藏0
  • js設(shè)計(jì)模式--迭代器模式

    摘要:文章系列設(shè)計(jì)模式單例模式設(shè)計(jì)模式策略模式設(shè)計(jì)模式代理模式概念迭代器模式是指提供一種方法順序訪問(wèn)一個(gè)聚合對(duì)象中的各個(gè)元素,而又不需要暴露該對(duì)象的內(nèi)部表示。 前言 本系列文章主要根據(jù)《JavaScript設(shè)計(jì)模式與開發(fā)實(shí)踐》整理而來(lái),其中會(huì)加入了一些自己的思考。希望對(duì)大家有所幫助。 文章系列 js設(shè)計(jì)模式--單例模式 js設(shè)計(jì)模式--策略模式 js設(shè)計(jì)模式--代理模式 概念 迭代器模式是指...

    binta 評(píng)論0 收藏0
  • 從零到有模擬實(shí)現(xiàn)一個(gè)Set類

    摘要:過(guò)濾掉和簡(jiǎn)單判斷是否是迭代器對(duì)象模擬行為對(duì)迭代器對(duì)象進(jìn)行遍歷操作。看到這里你可能已經(jīng)知道了,要實(shí)現(xiàn)的功能之一就是提供一個(gè)迭代器。原文鏈接參考迭代器和生成器系列之模擬實(shí)現(xiàn)一個(gè)數(shù)據(jù)結(jié)構(gòu)展開語(yǔ)法循環(huán) 前言 es6新增了Set數(shù)據(jù)結(jié)構(gòu),它允許你存儲(chǔ)任何類型的唯一值,無(wú)論是原始值還是對(duì)象引用。這篇文章希望通過(guò)模擬實(shí)現(xiàn)一個(gè)Set來(lái)增加對(duì)它的理解。 原文鏈接 用在前面 實(shí)際工作和學(xué)習(xí)過(guò)程中,你可能也...

    PAMPANG 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<