摘要:既然已經(jīng)發(fā)布,就可能有好事者拿出去當(dāng)面試題。循環(huán)的終止條件簡單且明確即使在循環(huán)體內(nèi)修改了數(shù)組,也能有效的終止循環(huán)。提前確定了循環(huán)終止條件,避免多次計算數(shù)組長度。
先看題:mean的值是什么?
var scores = [10,11,12]; var total = 0; for(var score in scores){ total += score; } var mean = total/scores.length; console.log(mean);是11?
恭喜你:答錯了!
是1?恭喜你:答錯了!
正確答案: 4解釋: for in 循環(huán)循環(huán)的值永遠是key, key是一個字符串。所以total的值是:"0012"。它是一個字符串,字符串"0012"/3,0012會被轉(zhuǎn)換成12,然后除以3,結(jié)果是4。
后記這個示例是來自《編寫高質(zhì)量JavaScript的68個方法》的第49條:數(shù)組迭代要優(yōu)先使用for循環(huán)而不是for in循環(huán)。
既然已經(jīng)發(fā)布,就可能有好事者拿出去當(dāng)面試題。這個題目很有可能坑一堆人。其中包括我。
這里涉及到許多js的基礎(chǔ)知識.
for in 循環(huán)是循環(huán)對象的索引屬性,key是一個字符串。
數(shù)值類型和字符串相加,會自動轉(zhuǎn)換為字符串
字符串除以數(shù)值類型,會先把字符串轉(zhuǎn)為數(shù)值,最終結(jié)果為數(shù)值
正確方法
var scores = [10,11,12]; var total = 0; for(var i=0, n=scores.length; i < n; i++){ total += scores[i]; } var mean = total/scores.length; console.log(mean);
這樣寫有幾個好處。
循環(huán)的終止條件簡單且明確
即使在循環(huán)體內(nèi)修改了數(shù)組,也能有效的終止循環(huán)。否則就可能變成死循環(huán)。
編譯器很難保證重啟計算scores.length是安全的。
提前確定了循環(huán)終止條件,避免多次計算數(shù)組長度。這個可能會被一些瀏覽器優(yōu)化。
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/82183.html
摘要:系統(tǒng)拿不再經(jīng)過系統(tǒng),而是從消息隊列里邊拿。高可用無論是我們使用消息隊列來做解耦異步還是削峰,消息隊列肯定不能是單機的。最后本文主要講解了什么是消息隊列,消息隊列可以為我們帶來什么好處,以及一個消息隊列可能會涉及到哪些問題。 前言 只有光頭才能變強。文本已收錄至我的GitHub倉庫,歡迎Star:https://github.com/ZhongFuCheng3y/3y 公司用到的很多技...
摘要:這個系列的文章將記錄我準(zhǔn)備春招的整個過程,我會將自己學(xué)習(xí)到的新知識記錄在這個系列里文章目錄前言說明準(zhǔn)備方向目標(biāo)前言說明作為半個科班出身學(xué)數(shù)學(xué)的應(yīng)屆生,在學(xué)習(xí)計算機的時候還是比較吃力的,從今年月份開始接觸前端,到現(xiàn)在也有個月左右了。 這個系列的文章將記錄我準(zhǔn)備春招的整個過程,我會將自己學(xué)習(xí)到的新知識記錄在這個系列里 文章目錄 前言說明 準(zhǔn)備方向 目標(biāo) 前言說明 ??作為半個科班出身...
摘要:這個系列的文章將記錄我準(zhǔn)備春招的整個過程,我會將自己學(xué)習(xí)到的新知識記錄在這個系列里文章目錄前言說明準(zhǔn)備方向目標(biāo)前言說明作為半個科班出身學(xué)數(shù)學(xué)的應(yīng)屆生,在學(xué)習(xí)計算機的時候還是比較吃力的,從今年月份開始接觸前端,到現(xiàn)在也有個月左右了。 這個系列的文章將記錄我準(zhǔn)備春招的整個過程,我會將自己學(xué)習(xí)到的新知識記錄在這個系列里 文章目錄 前言說明 準(zhǔn)備方向 目標(biāo) 前言說明 ??作為半個科班出身...
摘要:這個系列的文章將記錄我準(zhǔn)備春招的整個過程,我會將自己學(xué)習(xí)到的新知識記錄在這個系列里文章目錄前言說明準(zhǔn)備方向目標(biāo)前言說明作為半個科班出身學(xué)數(shù)學(xué)的應(yīng)屆生,在學(xué)習(xí)計算機的時候還是比較吃力的,從今年月份開始接觸前端,到現(xiàn)在也有個月左右了。 這個系列的文章將記錄我準(zhǔn)備春招的整個過程,我會將自己學(xué)習(xí)到的新知識記錄在這個系列里 文章目錄 前言說明 準(zhǔn)備方向 目標(biāo) 前言說明 ??作為半個科班出身...
摘要:本文旨在用最通俗的語言講述最枯燥的基本知識今日,看到有些文章對碼農(nóng)和程序員做了一些界限劃定和差異分析,嚇得作者趕緊研究一下自己屬于哪個身份,但當(dāng)仔細查看了這些文章后,發(fā)現(xiàn)其實對于寫代碼的人來說,無非就像周星馳嘴里的龍?zhí)缀脱輪T之分,頓時感悟, 本文旨在用最通俗的語言講述最枯燥的基本知識 今日,看到有些文章對碼農(nóng)和程序員做了一些界限劃定和差異分析,嚇得作者趕緊研究一下自己屬于哪個身份,但當(dāng)...
閱讀 3246·2021-11-24 09:39
閱讀 2931·2021-09-09 11:34
閱讀 3199·2021-09-07 09:58
閱讀 2305·2019-08-30 13:07
閱讀 2870·2019-08-29 15:09
閱讀 1569·2019-08-29 13:01
閱讀 2309·2019-08-26 12:18
閱讀 1928·2019-08-26 10:28