ES6 - for of循環(huán)

導讀 :

  • ES6就新增了一個for of循環(huán)(用法代碼底部),其特性的話就是內置迭代器,可以用來執(zhí)行 Generator 函數,然后順便復習一下前ES5里面的循環(huán)(遍歷),講解都在代碼注釋里,我就不再多說了。

例子:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
</head>
<body>
    <script type="text/javascript">
        // forEach()  注意點:使用箭頭函數第二個參數(指向問題)將不生效 
        /*      
        let arr = ['apple','banana','orange'];
        arr.forEach(function(val, index, arr){
            console.log(this, val, index, arr);
        },document);
        */


        // map()  注意點:與forEach最大區(qū)別在于該函數可以設置返回值格式
        /*      
        let arr = [
            {title: 'aaa', read: 100, hot: true},
            {title: 'bbb', read: 567, hot: false},
            {title: 'ccc', read: 154, hot: false},
            {title: 'ddd', read: 5, hot: true}
        ];
        let res = arr.map(function(item, index, arr){
            let json = {};
            json.t = `^_^${item.title}`;
            json.r = item.read + 100;
            json.h = item.hot == true && '真棒!!!';
            return json;
        });
        console.log(res);
        */


        // filter  注意點:過濾符合要求的組
        /*
        
        let arr = [
            {title: 'aaa', read: 100, hot: true},
            {title: 'bbb', read: 567, hot: false},
            {title: 'ccc', read: 154, hot: false},
            {title: 'ddd', read: 5, hot: true}
        ];
        let newArray = arr.filter(function(val, index, arr){
            return val.hot == true;
        });
        console.log(newArray);
        */


        // some   注意點:判斷有沒有包含指定的值
        /*  
        let arr = ['apple','banana','orange'];
        let temp = arr.some((val, index, arr)=>{
            return val == 'banana';
        });
        console.log(temp); // true*/


        // every   注意點:和some相似,只不過是滿足所有條件為true
        // reduce  求和,階乘等(Math.pow())
        // ES6新增: for..of       遍歷索引和值:arr.entries(),索引:arr.keys()
        let arr = ['apple','banana','orange'];
        for(let val of arr) {
            console.log(val);
        }

    </script>
</body>
</html>

總結 :

  • 個人感覺這個循環(huán)寫法比較簡潔,可以嘗試改變一下編碼風格。
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

  • 我們在學習web前端的路程起步時總是疑問,我們如何更好的遍歷元素呢?迭代器和生成器是什么?今天為大家?guī)吓c精彩的E...
    儂姝沁兒閱讀 3,515評論 0 6
  • 0. 寫在前面 當你開始工作時,你不是在給你自己寫代碼,而是為后來人寫代碼。 —— Nichloas C. Zak...
    康斌閱讀 5,521評論 1 42
  • [TOC] 參考阮一峰的ECMAScript 6 入門參考深入淺出ES6 let和const let和const都...
    郭子web閱讀 1,915評論 0 1
  • 一、ES6簡介 ? 歷時將近6年的時間來制定的新 ECMAScript 標準 ECMAScript 6(亦稱 ...
    一歲一枯榮_閱讀 6,209評論 8 25
  • 早春的時候,廚房的油煙機壞了,你心想:“開著窗戶做飯也行”,不去管它。直到盛夏到來,在煙熏火燎的廚房中費力做飯的你...
    白寶寧閱讀 732評論 1 1

友情鏈接更多精彩內容