JavaScript基礎介紹迴圈for、while、foEach

6 月 4, 2018 | | 0 comments

迴圈

迴圈總共分為三種寫法分別有 for、while、do while,其中最常見也被最常使用的就非 for 迴圈莫屬了,故這邊就先只提 for 一種。

for 語句

for 迴圈的小括號內有三個參數用分號隔開,它們各自有其功用,for迴圈的基本語法如下:

  • 參數一控制變數初始值
  • 參數二設定週期
  • 參數三設定每次間隔
for (let i = 0 ; i < 10 ; i +=1){
    console.log(i);
}

這邊值得一提的是我並不是使用 i++ 做每次間隔,由於 ESLint 建議Unary operator '++' used. (no-plusplus) 不要使用 ++ -- 官方是這樣說的

Why? Per the eslint documentation, unary increment and decrement statements are subject to automatic semicolon insertion and can cause silent errors with incrementing or decrementing values within an application. It is also more expressive to mutate your values with statements like num += 1 instead of num++ or num ++. Disallowing unary increment and decrement statements also prevents you from pre-incrementing/pre-decrementing values unintentionally which can also cause unexpected behavior in your programs.

簡單來說使用一元遞增(減)會導致程序中的意外行為所以盡量不要使用

for of 和 foEach 語句

  • for of

for of 是 ES6 新增的語句,可用於迭代就件上取出容器裡的值例如陣列、Map、Set、字串等等。

let mArray = [1, 2, 3]
for (let value of mArray) {
  console.log(value); // 1 2 3
}
  • foEach

foEach是屬於陣列裡的一個方法他也可以做出相同的事情。

const numbers = [1, 2, 3, 4, 5];
let sum = 0;
numbers.forEach(num => sum += num);
console.log(sum) // 15

文章分享來源:https://andy6804tw.github.io/2017/12/19/js-tutorial-psrt2/