map และ filter — พื้นฐานสำคัญ
แปลงและเลือกข้อมูลด้วย map และ filter เชื่อมต่อการทำงาน และหลีกเลี่ยงการกลายค่าเพื่อให้โค้ดปลอดภัยยิ่งขึ้น
map และ filter — พื้นฐานสำคัญ เป็นบทเรียน JavaScript Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 1 จากทั้งหมด 2 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน JavaScript Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส JavaScript Academy มีบทเรียนทั้งหมด 2 บทเรียน
บทนำเกี่ยวกับ map และ filter
เป้าหมาย: แปลงรายการด้วย map และเลือกรายการด้วย filter
- map: แปลงค่า
- filter: เลือกค่า
- เชื่อม map → filter
- ไม่แก้ไขข้อมูลเดิม

พื้นฐาน map
mapจะใช้ฟังก์ชันกับทุกองค์ประกอบ และส่งคืนอาร์เรย์ใหม่ที่มีความยาวเท่าเดิม
// map transforms each value and returns a new array
const nums = [1, 2, 3];
const doubled = nums.map(function (n) {
return n * 2;
});
console.log("nums:", nums);
console.log("doubled:", doubled);

พื้นฐาน filter
filterจะส่งคืนเฉพาะรายการที่ฟังก์ชันเรียกกลับของคุณส่งค่าจริงกลับมา โดยความยาวอาจเปลี่ยนแปลงได้
// filter keeps values that pass the test
const values = [1, 2, 3, 4, 5];
const evens = values.filter(function (n) {
return n % 2 === 0;
});
console.log("values:", values);
console.log("evens:", evens);

ตัวอย่างการเชื่อมต่อ
รวมขั้นตอนได้ดังนี้ ใช้ map เพื่อแปลงค่า แล้วใช้ filter เพื่อเลือกค่า
// Chain methods for clarity
const prices = [4, 7, 10];
// First add tax, then keep items over 8
const withTax = prices.map(function (p) {
return p * 1.1;
});
const expensive = withTax.filter(function (p) {
return p > 8;
});
console.log("withTax:", withTax);
console.log("expensive:", expensive);

ตัวอย่างการไม่แก้ไขข้อมูลเดิม
การไม่เปลี่ยนแปลงข้อมูลเดิม: map/filter จะส่งคืนอาร์เรย์ใหม่ และอาร์เรย์ต้นฉบับจะไม่เปลี่ยนแปลง
// map and filter do not mutate the original array
const base = [2, 4, 6];
const plusOne = base.map(function (n) {
return n + 1;
});
const small = base.filter(function (n) {
return n < 5;
});
console.log("base:", base);
console.log("plusOne:", plusOne);
console.log("small:", small);

เคล็ดลับสำหรับอาร์เรย์ที่สะอาด
เคล็ดลับ:
- ตั้งชื่อฟังก์ชันเรียกกลับขนาดเล็กให้สื่อความหมาย (n, item) เพื่อความชัดเจน
- ทำการเชื่อมต่อให้สั้น ไม่เกิน 2–3 ขั้นตอน
- ควรใช้ฟังก์ชันเรียกกลับแบบบริสุทธิ์ ซึ่งไม่มีผลข้างเคียง

แบบทดสอบ map เทียบกับ filter
ตรวจสอบอย่างรวดเร็ว: แปลงทุกองค์ประกอบ

ทบทวน
ทบทวน: ใช้ map เพื่อแปลงค่า ใช้ ตัวกรอง เพื่อเลือกบางค่า และเชื่อมการทำงานโดยไม่เปลี่ยนแปลงอาร์เรย์เดิม

คำถามที่พบบ่อย
บทเรียน “map และ filter — พื้นฐานสำคัญ” ฟรีหรือไม่
ใช่ — ข้อความเต็มของ “map และ filter — พื้นฐานสำคัญ” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส JavaScript Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส JavaScript Academy มีบทเรียนทั้งหมด 2 บทเรียน
คุณจะเรียนรู้อะไรในบทเรียน “map และ filter — พื้นฐานสำคัญ”
แปลงและเลือกข้อมูลด้วย map และ filter เชื่อมต่อการทำงาน และหลีกเลี่ยงการกลายค่าเพื่อให้โค้ดปลอดภัยยิ่งขึ้น คุณปฏิบัติ JavaScript Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน
คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน JavaScript Academy หรือไม่
ไม่จำเป็นต้องมีประสบการณ์มาก่อน JavaScript Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 1 จากทั้งหมด 2 บทเรียน
บทเรียน “map และ filter — พื้นฐานสำคัญ” ใช้เวลานานแค่ไหน
บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย
ฉันเขียนและรันโค้ดในบทเรียน JavaScript Academy นี้ได้ไหม
ได้ บทเรียน JavaScript Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ
บทเรียนทั้งหมดในหลักสูตรนี้
- map และ filter — พื้นฐานสำคัญ
- reduce, some/every, find — รูปแบบง่าย ๆ