成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

遍歷數(shù)組

張利勇 / 2379人閱讀

摘要:方法方法還可以添加新屬性方法和兩者的主要區(qū)別在于他們的迭代方式推薦在循環(huán)對象屬性的時(shí)候使用在遍歷數(shù)組的時(shí)候使用循環(huán)出來的是循環(huán)出來的是是標(biāo)準(zhǔn),是標(biāo)準(zhǔn),兼容性可能存在些問題,請注意使用不能遍歷普通的對象,需要和搭配使用方法方法

方法1 -- for
var arr = [1,2,3,4,5,6,7,8,9]
for(var i = 0; i
方法2 -- for...in
var arr = [1,2,3,4,5,6,7,8,9]
for(var i in arr){
    console.log(arr[i])
    conosle.loh(arr[i] + "/" + i) // 還可以添加新屬性
}
方法3 -- for...of
var arr = [1,2,3,4,5,6,7,8,9]
for(var i of arr){
    console.log(i)
}

for...in 和 for...of 兩者的主要區(qū)別在于他們的迭代方式
推薦
在循環(huán)對象屬性的時(shí)候使用for in
在遍歷數(shù)組的時(shí)候使用for of

for...in 循環(huán)出來的是key, for...of循環(huán)出來的是value

for...in 是ES5 標(biāo)準(zhǔn),for...of 是ES6標(biāo)準(zhǔn),兼容性可能存在些問題,請注意使用

for...of 不能遍歷普通的對象,需要和Object.keys() 搭配使用

方法4 -- forEach
/* forEach方法:被傳遞給forEach的函數(shù)會在數(shù)組的每個(gè)元素上執(zhí)行一次,元素作為參數(shù)傳遞給該函數(shù) */

var arr = [1,2,3,4,5,6,7,8,9]
arr.forEach(function(element,index){
    console.log(element)
    console.log(element + "/" + index)
})

【!注意!】未賦值的值是不會在forEach循環(huán)迭代的,但是手動賦值為undefined的元素是會被列出的

var arr = [1,,3,undefined,5,6,7,8,9]
arr.forEach(function(element,index){
    console.log(element + "/" + index)
})
方法5 -- map

map 遍歷數(shù)組,并通過callback對數(shù)組元素進(jìn)行操作,并將所有操作結(jié)果放入數(shù)組中并返回該數(shù)組

var arr = [1,2,3,4,5,6,7,8,9]
var arr2 = arr.map(function(item){
    console.log(item )
 })
方法6 -- filter

filter()返回一個(gè)包含所有在回調(diào)函數(shù)上返回為true的元素新數(shù)組,回調(diào)函數(shù)在此擔(dān)任的是過濾器的角色,當(dāng)元素符和條件,過濾器就返回true,而filter則會返回所有符合過濾條件的元素

var arr = ["aaa","bbb","ccc",1,2,3]

var arr2 = arr.filter(function(item){
    if(typeof item == "number"){
        return item;
    }
})
console.log(arr2);

方法7 -- every

every() 當(dāng)數(shù)組中的每一個(gè)元素在callback上被返回true時(shí)就返回true(注意:要求每一個(gè)單元項(xiàng)都返回true時(shí)才為true)

var arr = ["aaa","bbb","ccc",1,2,3]

var bol = arr.every(function(element){
    if(typeof element == "string"){
        return element;
    }
})
console.log(bol); //false

every()與filter()的區(qū)別是:后者會返回所有符合過濾條件的元素;前者會判斷是不是數(shù)組中的所有元素都符合條件,并且返回的是布爾值

方法8 -- some

some()只要數(shù)組中有一項(xiàng)在callback上就返回true

var arr = ["aaa","bbb","ccc",1,2,3]

var arr = ["first","second","third" ,"fourth",3,5,8];
var bol = arr.some(function(element){
    if(typeof element == "string"){
        return element;
    }
})
console.log(bol); //true

every()與some()的區(qū)別是:前者要求所有元素都符合條件才返回true,后者要求只要有符合條件的就返回true

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

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/105753.html

相關(guān)文章

  • php數(shù)組原理遍歷原理揭秘

    摘要:數(shù)組原理遍歷原理揭秘?cái)?shù)組原理遍歷原理揭秘可見,數(shù)組其實(shí)已經(jīng)改變了,但是遍歷出來的并沒有增加的哪一項(xiàng)。此時(shí),我們也可以輸出一下當(dāng)前指針位置數(shù)組原理遍歷原理揭秘?cái)?shù)組原理遍歷原理揭秘?cái)?shù)組指針停留在了位置上。 php中的中的數(shù)組跟js里面數(shù)組是不大一樣的。php中數(shù)組的下標(biāo)可以整數(shù)也可以是字符串,而且數(shù)組中元素的順序不是由下標(biāo)決定的,而是由添加元素的順序。數(shù)組基礎(chǔ) $arr1 = array(...

    wanghui 評論0 收藏0
  • JavaScript:遍歷

    摘要:中可以實(shí)現(xiàn)遍歷的數(shù)據(jù)類型主要是對象,其中包括普通對象與數(shù)組。遍歷器是一種接口,為各種不同的數(shù)據(jù)結(jié)構(gòu)提供統(tǒng)一的訪問機(jī)制。實(shí)例五遍歷器對象實(shí)例五是的遍歷過程,通過手動調(diào)用其對象的方法實(shí)現(xiàn)信息獲取。為每個(gè)數(shù)組元素執(zhí)行函數(shù)。 前言 ??將依據(jù)自身痛點(diǎn)學(xué)習(xí),計(jì)劃對原生JavaScript寫一個(gè)系統(tǒng),本文為第一篇,感興趣的同學(xué)可以關(guān)注個(gè)人公眾號:ZeroToOneMe,或者github博客,將持續(xù)...

    ThinkSNS 評論0 收藏0
  • JS 數(shù)組循環(huán)遍歷方法的對比

    摘要:循環(huán)方法方法不改變原數(shù)組方法會給原數(shù)組中的每個(gè)元素都按順序調(diào)用一次函數(shù)。篩選出過濾出數(shù)組中符合條件的項(xiàng)組成新數(shù)組代碼方法方法為數(shù)組中的每個(gè)元素執(zhí)行一次函數(shù),直到它找到一個(gè)使返回表示可轉(zhuǎn)換為布爾值的值的元素。 showImg(https://segmentfault.com/img/bV2QTD?w=1600&h=500); 前言 JavaScript 發(fā)展至今已經(jīng)發(fā)展出多種數(shù)組的循環(huán)遍...

    BlackFlagBin 評論0 收藏0
  • Array的迭代器

    摘要:如上圖所示,本文主要闡述了的四種迭代器,,和的功能和區(qū)別動態(tài)數(shù)組每次遍歷開始時(shí)都會重新計(jì)算一次數(shù)組的長度稀疏數(shù)組不會跳過無效數(shù)組動態(tài)數(shù)組與一樣,會遍歷到新增加的元素稀疏數(shù)組也不會跳過無效數(shù)組特點(diǎn)可以遍歷字符串可以遍歷類數(shù)組對象對象可 showImg(https://segmentfault.com/img/bV4PxL?w=3134&h=932); 如上圖所示,本文主要闡述了Array...

    Turbo 評論0 收藏0
  • Js之淺拷貝深拷貝與對象數(shù)組遍歷

    摘要:判斷是深拷貝對象還是數(shù)組如果要拷貝的對象的屬性依然是個(gè)復(fù)合類型,遞歸運(yùn)用遞歸,當(dāng)要拷貝的對象或者數(shù)組的屬性依然是個(gè)對象或者數(shù)組時(shí),遞歸調(diào)用。遍歷對象聊完了深拷貝和淺拷貝,接下來說一下遍歷。 在js這門語言中,數(shù)據(jù)存放在堆中,而數(shù)據(jù)的引用的存放在棧中。 淺拷貝 我們說的淺拷貝,指的是,引用地址的拷貝,棧中兩塊不同的引用地址都指向了堆中同樣一塊區(qū)域。所以,我們通過一個(gè)地址修改了堆中的數(shù)據(jù),...

    liangzai_cool 評論0 收藏0
  • jS:關(guān)于對象遍歷數(shù)組遍歷的那些事

    摘要:如圖遍歷數(shù)組遍歷數(shù)組元素并以某種方式處理每個(gè)元素是一個(gè)常見的操作。如圖不過,里的功能比較強(qiáng)大,可以遍歷而且返回值是的則被省略掉總結(jié)遍歷對象,遍歷出來的是鍵名,而不是鍵值,參數(shù)必須是對象。 可能是由于職業(yè)的關(guān)系,下班之后完全不想Open PC,但很多知識點(diǎn)有必要自己做個(gè)小小總結(jié)。本人之前對原生Array和Object完全沒概念。 遍歷對象的方法: Object.keys(Object)...

    qingshanli1988 評論0 收藏0

發(fā)表評論

0條評論

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