国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

JavaScript 中遍歷方法小結(jié)

flyer_dev / 490人閱讀

摘要:遍歷方法小結(jié)常用的遍歷方法遍歷對數(shù)組的每個元素執(zhí)行一次提供的函數(shù)創(chuàng)建一個新數(shù)組,其結(jié)果是該數(shù)組中的每個元素都調(diào)用一個提供的函數(shù)后返回的結(jié)果遍歷大家都熟悉,所以重點(diǎn)講一下與的區(qū)別相同點(diǎn)回調(diào)函數(shù)參數(shù)相同,都自帶三個屬性均不會修改原數(shù)組第二參數(shù)的

遍歷方法小結(jié) 常用的遍歷方法

for 遍歷

forEach(對數(shù)組的每個元素執(zhí)行一次提供的函數(shù))

map(創(chuàng)建一個新數(shù)組,其結(jié)果是該數(shù)組中的每個元素都調(diào)用一個提供的函數(shù)后返回的結(jié)果)

for 遍歷大家都熟悉,所以重點(diǎn)講一下forEachmap 的區(qū)別

相同點(diǎn):

回調(diào)函數(shù)參數(shù)相同,都自帶三個屬性:item / index / array

均不會修改原數(shù)組

第二參數(shù)this的指向均指向window(可是使用箭頭函數(shù)進(jìn)行修改)

只能遍歷數(shù)組

都不能使用循環(huán)跳出語句 break & continue

不同點(diǎn):

forEach

返回值為undefined

map

返回值為一個新的數(shù)組

可以鏈?zhǔn)秸{(diào)用

  // 鏈?zhǔn)秸{(diào)用
  var str = "abcde";
  // 使用call在字符類型中使用map方法
  Array.prototype.map.call(str, function(x) {   
    return x;
  }).reverse().join("");
  // edcba

其他遍歷方法

filter (創(chuàng)建一個新數(shù)組, 其包含通過所提供函數(shù)實(shí)現(xiàn)的測試的所有元素)

find (返回?cái)?shù)組中滿足提供的測試函數(shù)的第一個元素的值。否則返回 undefined)

every (測試數(shù)組的所有元素是否都通過了指定函數(shù)的測試)

some (測試是否至少有一個元素通過由提供的函數(shù)實(shí)現(xiàn)的測試)

【Attention】 
filter 將遍歷所有的元素
find & some & every 屬于「條件中斷」遍歷(即當(dāng)元素滿足某一條件是返回boolean)
四個方法都不會對原數(shù)組進(jìn)行修改
ES5 中的for...in 遍歷

常用于對象key值的遍歷

ES6 引入的遍歷方法

for...of 遍歷

[ 前置知識:for...of 可對具有iterator接口的數(shù)據(jù)結(jié)構(gòu)進(jìn)行遍歷 ]

原生具有iterator接口的數(shù)據(jù)結(jié)構(gòu)如下:

Array

Set

Map

String

TypedArray

NodeList 對象

函數(shù)的arguments 對象

keys( ) / values( ) / entries( )

常用來遍歷對象、數(shù)組、set、map結(jié)構(gòu)

【番外】

改變原數(shù)組的方法
pop、push、reverse、shift、sort、splice、unshift

不會改變原數(shù)組的方法
concat、join、slice、toString、toLocaleString、indexOf、lastIndexOf

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

轉(zhuǎn)載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/102685.html

相關(guān)文章

  • JavaScript常用的設(shè)計(jì)模式

    摘要:本文已同步到中常見的設(shè)計(jì)模式如果感覺寫的還可以,就給個小星星吧,歡迎和收藏。本文中關(guān)于各種設(shè)計(jì)模式定義都是引用書中的,部分引用自百度百科已標(biāo)出。下面把我整理出的常用設(shè)計(jì)模式按類型做個表格整理。 本文已同步到Github JavaScript中常見的設(shè)計(jì)模式,如果感覺寫的還可以,就給個小星星吧,歡迎star和收藏。 最近拜讀了曾探大神的《JavaScript設(shè)計(jì)模式與開發(fā)實(shí)踐》,真是醍醐...

    NSFish 評論0 收藏0
  • 高性能JavaScript(文檔)

    摘要:最近在全力整理高性能的文檔,并重新學(xué)習(xí)一遍,放在這里方便大家查看并找到自己需要的知識點(diǎn)。 最近在全力整理《高性能JavaScript》的文檔,并重新學(xué)習(xí)一遍,放在這里方便大家查看并找到自己需要的知識點(diǎn)。 前端開發(fā)文檔 高性能JavaScript 第1章:加載和執(zhí)行 腳本位置 阻止腳本 無阻塞的腳本 延遲的腳本 動態(tài)腳本元素 XMLHTTPRequest腳本注入 推薦的無阻塞模式...

    RayKr 評論0 收藏0
  • 高性能javascript小結(jié)

    摘要:高性能小結(jié)文章轉(zhuǎn)載于我的博客最近看完了動物叢書的高性能,覺得那本書的小結(jié)部分寫得非常不錯,簡潔輕快易懂概括性很強(qiáng)。由于局部變量存在于作用域鏈的起始位置,因此訪問局部變量比訪問跨作用域變量更快。 高性能javascript小結(jié) 文章轉(zhuǎn)載于我的CSDN博客:http://blog.csdn.net/hello_world_20/article/details/46793317 最近看完了動...

    wujl596 評論0 收藏0
  • JavaScript標(biāo)準(zhǔn)庫系列——Object對象和Array對象(一)

    摘要:目錄導(dǎo)語對象對象小結(jié)導(dǎo)語本系列文章將重點(diǎn)講解提供的原生庫標(biāo)準(zhǔn)庫,只要在支持語言的平臺,標(biāo)準(zhǔn)庫中的提供的對象的屬性和方法都能使用對象對象的理解講的標(biāo)準(zhǔn)庫,首先要從對象談起,因?yàn)橹蟮乃袑ο蠖伎梢钥醋鍪菍ο髽?gòu)造出來的因此,對象可以看做是一個構(gòu) 目錄 導(dǎo)語 1. Object對象 2. Array對象 3. 小結(jié) 導(dǎo)語 本系列文章將重點(diǎn)講解JavaScript提供的原生庫——標(biāo)準(zhǔn)庫,只要...

    Scholer 評論0 收藏0
  • 【讀書筆記】《高性能JavaScript

    摘要:性能訪問字面量和局部變量的速度是最快的,訪問數(shù)組和對象成員相對較慢變量標(biāo)識符解析過程搜索執(zhí)行環(huán)境的作用域鏈,查找同名標(biāo)識符。建議將全局變量存儲到局部變量,加快讀寫速度。優(yōu)化建議將常用的跨作用域變量存儲到局部變量,然后直接訪問局部變量。 缺陷 這本書是2010年出版的,這本書談性能是有時效性的,現(xiàn)在馬上就2018年了,這幾年前端發(fā)展的速度是飛快的,書里面還有一些內(nèi)容考慮IE6、7、8的東...

    chengjianhua 評論0 收藏0

發(fā)表評論

0條評論

flyer_dev

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<