JavaScript 基礎

JavaScript 中陣列 (Array) 的遍歷方法 (for loop, for...in, for...of, forEach, map, filter, every, some)

AI 練習作答

JavaScript 陣列遍歷方法

1. for loop

最基本的遍歷,可使用 break / continue

const arr = [1, 2, 3];
for (let i = 0; i < arr.length; i++) {
  console.log(arr[i]);
}

2. for...in

遍歷可列舉屬性(key),不推薦用於陣列(會包含原型屬性):

for (const index in arr) {
  console.log(index); // '0', '1', '2'(字串)
}

3. for...of

遍歷可迭代物件的值,適合陣列(支援 break):

for (const value of arr) {
  console.log(value); // 1, 2, 3
}

4. forEach

對每個元素執行函式,無回傳值,無法 break:

arr.forEach((value, index) => {
  console.log(index, value);
});

5. map

回傳新陣列,每個元素為轉換後的值:

const doubled = arr.map(x => x * 2); // [2, 4, 6]

6. filter

回傳過濾後的新陣列

const evens = arr.filter(x => x % 2 === 0); // [2]

7. every

檢查所有元素是否符合條件,回傳 boolean:

arr.every(x => x > 0); // true
arr.every(x => x > 1); // false

8. some

檢查至少一個元素是否符合條件:

arr.some(x => x > 2); // true
arr.some(x => x > 5); // false

比較表

方法 回傳值 可 break 用途
for 通用遍歷
for...of 值遍歷
forEach undefined 副作用操作
map 新陣列 轉換元素
filter 新陣列 過濾元素
every boolean 全部符合?
some boolean 部分符合?

✦ AI 模擬面試

輸入你的答案,AI 即時分析精準度與改進空間

登入後即可使用 AI 評分