for in么抗,for of毅否, for,forEach蝇刀,map的區(qū)別

最近一直有在面試螟加,各種準(zhǔn)備,博客吞琐,慕課網(wǎng)都成了忱μ剑客,看了那么久那么認(rèn)真站粟,都把自己給感動(dòng)了黍图,然而呢,一道題幾家公司幾家問奴烙,知道就是說不出來助被,網(wǎng)上一看很多剖张,說的也很對,看完是懂了揩环,但是沒有自己去整理去記憶搔弄,還是會被一次次問的語無倫次,所以就從這篇開始吧丰滑。
這道題有兩家公司都有問到顾犹,表現(xiàn)的都不理想,從一開始的答不出來吨枉,到后邊的答不到重點(diǎn)蹦渣,進(jìn)步很小哄芜,慚愧呀貌亭,話不多說,開始學(xué)習(xí)认臊。

for...in根據(jù)key遍歷

for...in區(qū)別:

  • 遍歷對象時(shí)會從原型上繼承屬性圃庭,可以用hasOwnProperty()識別出繼承屬性,
  • 遍歷數(shù)組會把數(shù)組下標(biāo)看做屬性名失晴,也就輸出結(jié)果是數(shù)組的下標(biāo)剧腻,且不一定按照數(shù)組的索引順序。
  • 輸出結(jié)果是字符串
function Person(name){
    this.name = name;
}
Person.prototype.getName = function(){
    return this.name;
}
var child= new Person('lala');
for (let i in child){
    console.log(i);
}
//name
//getName
for (let i in child){
  if(child.hasOwnProperty(i)){
    console.log(i);
  }
}
//name
var aa = ['aa','bb','cc'];
for(let i in aa){
  console.log(i);
}
// 0  1  2

for...of根據(jù)值遍歷

for...of用來遍歷數(shù)據(jù)涂屁,例如數(shù)組中的值书在,但是也可以遍歷字符串,支持Map和Set對象的遍歷拆又,避免了所有for...in的弊端儒旬,與forEach相比可以正確響應(yīng)break,continue帖族,return語句栈源。

var aa = ['aa','bb','cc'];
for(let i of aa){
  console.log(i);
}
// aa  bb  cc
var str='abc';
for(let i of str){
  console.log(i);
}
// a  b  c
var set=new Set(['aa','bb','cc']);
for(let i of set){
  console.log(i);
}
//aa  bb  cc

forEach根據(jù)index遍歷

forEach一般只能適用于數(shù)組,功能是從頭到尾把數(shù)組遍歷一遍,可以有三個(gè)參數(shù)竖般,后兩個(gè)可以不寫

var arr = ['aa','bb'];
arr.forEach(function(v,i,a){
    console.log(v,i,a);//分別對應(yīng):數(shù)組元素甚垦,元素的索引,數(shù)組本身
});
//aa  0  ['aa','bb']
//bb  1  ['aa','bb']

講真基礎(chǔ)還是需要多練習(xí)涣雕,聽說forEach是for循環(huán)的加強(qiáng)版艰亮,就想自己去實(shí)現(xiàn)下,結(jié)果想的有些復(fù)雜了還沒做出來挣郭,于是百度了下垃杖,居然那么簡單。

Array.prototype.eachFor = function(fn){
  for(let i=0;i<this.length;i++){
    fn(this[i],i,this);
  }
}
var aa=[5,6,7];
aa.eachFor(function(v,i){
  console.log(v,i);
});
//5  0
//6  1
//7  2

map根據(jù)index遍歷

和forEach相比丈屹,使用方法一樣有三個(gè)參數(shù)调俘,map只能對元素進(jìn)行加工處理伶棒,產(chǎn)生一個(gè)新的數(shù)組對象。

var arr=[1,2,3];
arr.map(function(v,i,arr){
  return v*2;
});
//[2,4,6]

filter

filter對原數(shù)組進(jìn)行過濾篩選彩库,生成新的數(shù)組,使用和map樣有三個(gè)參數(shù)肤无。如果對空數(shù)組進(jìn)行篩選,會返回undefined骇钦。filter不會改變原數(shù)組宛渐。

var aa=[1,2,1,2,3];
aa.filter(function(v,i,self){
    return self.indexOf(v) == i;
});
//[1,2,3]

for

for常規(guī)語句遍歷,可循環(huán)數(shù)字,字符串眯搭,數(shù)組

for(let i=0;i<5;i++){
  console.log(i);
}
//0  1  2  3  4
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末窥翩,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子鳞仙,更是在濱河造成了極大的恐慌寇蚊,老刑警劉巖,帶你破解...
    沈念sama閱讀 217,277評論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件棍好,死亡現(xiàn)場離奇詭異仗岸,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)借笙,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,689評論 3 393
  • 文/潘曉璐 我一進(jìn)店門扒怖,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人业稼,你說我怎么就攤上這事盗痒。” “怎么了低散?”我有些...
    開封第一講書人閱讀 163,624評論 0 353
  • 文/不壞的土叔 我叫張陵俯邓,是天一觀的道長。 經(jīng)常有香客問我谦纱,道長看成,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,356評論 1 293
  • 正文 為了忘掉前任跨嘉,我火速辦了婚禮川慌,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘祠乃。我一直安慰自己梦重,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,402評論 6 392
  • 文/花漫 我一把揭開白布亮瓷。 她就那樣靜靜地躺著琴拧,像睡著了一般。 火紅的嫁衣襯著肌膚如雪嘱支。 梳的紋絲不亂的頭發(fā)上蚓胸,一...
    開封第一講書人閱讀 51,292評論 1 301
  • 那天挣饥,我揣著相機(jī)與錄音,去河邊找鬼沛膳。 笑死扔枫,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的锹安。 我是一名探鬼主播短荐,決...
    沈念sama閱讀 40,135評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼叹哭!你這毒婦竟也來了忍宋?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 38,992評論 0 275
  • 序言:老撾萬榮一對情侶失蹤风罩,失蹤者是張志新(化名)和其女友劉穎糠排,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體泊交,經(jīng)...
    沈念sama閱讀 45,429評論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡乳讥,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,636評論 3 334
  • 正文 我和宋清朗相戀三年柱查,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了廓俭。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,785評論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡唉工,死狀恐怖研乒,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情淋硝,我是刑警寧澤雹熬,帶...
    沈念sama閱讀 35,492評論 5 345
  • 正文 年R本政府宣布,位于F島的核電站谣膳,受9級特大地震影響竿报,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜继谚,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,092評論 3 328
  • 文/蒙蒙 一烈菌、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧花履,春花似錦芽世、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,723評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至妹卿,卻和暖如春旺矾,著一層夾襖步出監(jiān)牢的瞬間蔑鹦,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,858評論 1 269
  • 我被黑心中介騙來泰國打工箕宙, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留举反,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 47,891評論 2 370
  • 正文 我出身青樓扒吁,卻偏偏與公主長得像火鼻,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個(gè)殘疾皇子雕崩,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,713評論 2 354

推薦閱讀更多精彩內(nèi)容