หลุมพรางอาร์เรย์ที่พบบ่อย

ลืมว่าดัชนีเริ่มที่ 0

ต้องการ “ตัวที่ 1” แต่เขียน arr[1] ได้ตัวที่สอง

ใช้ map แล้วไม่คืนค่า

ถ้า callback ไม่ return สมาชิกใหม่ อาร์เรย์ผลจะเต็มไปด้วย undefined

// ผิดแนวคิด
const bad = [1, 2, 3].map((n) => { n * 2; });
// [undefined, undefined, undefined]

// ถูก
const good = [1, 2, 3].map((n) => n * 2);

คิดว่า find คืนอาร์เรย์

find คืนสมาชิกตัวเดียว — อย่าเรียก .map ต่อจาก find โดยตรงโดยไม่เช็ก undefined

ก่อนสงสัยว่า “เมธอดพัง” ให้ console.log ความยาวและชนิดของผลลัพธ์ (อาร์เรย์ vs ค่าเดียว vs undefined)