0Pricing
JavaScript Academy · บทเรียน

Rest และ Spread — อาร์เรย์และออบเจ็กต์ตามแนวทางที่เหมาะสม

รวบรวมค่าหรือพร็อพเพอร์ตีที่เหลือ โคลนและผสานด้วย spread และหลีกเลี่ยงการกลายค่าโดยไม่รู้ตัวด้วยรูปแบบง่าย ๆ

Rest และ Spread — อาร์เรย์และออบเจ็กต์ตามแนวทางที่เหมาะสม เป็นบทเรียน JavaScript Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 2 จากทั้งหมด 2 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน JavaScript Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส JavaScript Academy มีบทเรียนทั้งหมด 2 บทเรียน

บทนำ

เป้าหมาย: ใช้ส่วนที่เหลือเพื่อรวบรวมค่าที่เกินมา และใช้การกระจายเพื่อคัดลอกหรือผสาน

  • การกระจายอาร์เรย์หรืออ็อบเจ็กต์
  • ส่วนที่เหลือของอาร์เรย์ (หัวหรือหาง)
  • ส่วนที่เหลือของอ็อบเจ็กต์ (ยกเว้นคีย์บางส่วน)
  • การแก้ไขข้อมูลเทียบกับการคัดลอก
Rest และ Spread — อาร์เรย์และออบเจ็กต์ตามแนวทางที่เหมาะสม — ภาพประกอบ 1

พื้นฐานการกระจายอาร์เรย์

[...arr]ใช้คัดลอกอาร์เรย์ และรวมอาร์เรย์โดยกระจายอาร์เรย์เหล่านั้นลงในอาร์เรย์ใหม่

// Array spread creates a shallow copy and merges arrays
const a = [1, 2];
const b = [3, 4];

const clone = [...a];
const merged = [...a, ...b];

console.log("a:", a);
console.log("clone:", clone);
console.log("merged:", merged);
Rest และ Spread — อาร์เรย์และออบเจ็กต์ตามแนวทางที่เหมาะสม — ภาพประกอบ 2

รูปแบบส่วนที่เหลือของอาร์เรย์

องค์ประกอบส่วนที่เหลือ (…tail) จะรวบรวมค่าที่เหลือไว้ในอาร์เรย์ใหม่

// Array rest collects the remaining items
const nums = [10, 20, 30, 40];

const [head, ...tail] = nums;

console.log("head:", head);
console.log("tail:", tail);
Rest และ Spread — อาร์เรย์และออบเจ็กต์ตามแนวทางที่เหมาะสม — ภาพประกอบ 3

พื้นฐานการกระจายอ็อบเจ็กต์

การผสานอ็อบเจ็กต์ขึ้นอยู่กับลำดับ การกระจายที่อยู่ทีหลังจะเขียนทับคีย์ก่อนหน้า

// Object spread copies and merges; later keys win
const base = { theme: "light", compact: false };
const override = { compact: true };

const copy = { ...base };
const merged = { ...base, ...override };

console.log("copy:", copy);
console.log("merged:", merged);
Rest และ Spread — อาร์เรย์และออบเจ็กต์ตามแนวทางที่เหมาะสม — ภาพประกอบ 4

รูปแบบส่วนที่เหลือของอ็อบเจ็กต์

ใช้ { a, ...rest } เพื่อดึงคุณสมบัติบางส่วนและเก็บส่วนที่เหลือไว้ด้วยกัน

// Object rest collects remaining properties
const user = { id: 7, name: "Ayla", role: "admin" };

const { id, ...publicInfo } = user;

console.log("id:", id);
console.log("publicInfo:", publicInfo);
Rest และ Spread — อาร์เรย์และออบเจ็กต์ตามแนวทางที่เหมาะสม — ภาพประกอบ 5

หลีกเลี่ยงการแก้ไขข้อมูลด้วยการคัดลอก

สร้างอ็อบเจ็กต์ใหม่เมื่อเปลี่ยนค่า วิธีนี้ชัดเจนและปลอดภัยกว่าการแก้ไขข้อมูลที่ใช้ร่วมกัน

// Copy instead of mutating original data
const settings = { sound: true, volume: 5 };

// Mutating version (avoid in shared state)
// settings.volume = 6;

// Non-mutating: create an updated copy
const updated = { ...settings, volume: 6 };

console.log("settings:", settings);
console.log("updated:", updated);
Rest และ Spread — อาร์เรย์และออบเจ็กต์ตามแนวทางที่เหมาะสม — ภาพประกอบ 6

แบบทดสอบส่วนที่เหลือของอ็อบเจ็กต์

ตรวจสอบอย่างรวดเร็ว: ส่วนที่เหลือของอ็อบเจ็กต์

Rest และ Spread — อาร์เรย์และออบเจ็กต์ตามแนวทางที่เหมาะสม — ภาพประกอบ 7

สรุป

สรุป: การกระจายใช้คัดลอกหรือผสานอาร์เรย์และอ็อบเจ็กต์ ส่วนที่เหลือใช้รวบรวมค่าที่เหลือ ควรเลือกคัดลอกแทนการแก้ไขข้อมูล เพื่อให้การเปลี่ยนแปลงชัดเจน

Rest และ Spread — อาร์เรย์และออบเจ็กต์ตามแนวทางที่เหมาะสม — ภาพประกอบ 8

คำถามที่พบบ่อย

บทเรียน “Rest และ Spread — อาร์เรย์และออบเจ็กต์ตามแนวทางที่เหมาะสม” ฟรีหรือไม่

ใช่ — ข้อความเต็มของ “Rest และ Spread — อาร์เรย์และออบเจ็กต์ตามแนวทางที่เหมาะสม” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส JavaScript Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส JavaScript Academy มีบทเรียนทั้งหมด 2 บทเรียน

คุณจะเรียนรู้อะไรในบทเรียน “Rest และ Spread — อาร์เรย์และออบเจ็กต์ตามแนวทางที่เหมาะสม”

รวบรวมค่าหรือพร็อพเพอร์ตีที่เหลือ โคลนและผสานด้วย spread และหลีกเลี่ยงการกลายค่าโดยไม่รู้ตัวด้วยรูปแบบง่าย ๆ คุณปฏิบัติ JavaScript Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน

คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน JavaScript Academy หรือไม่

ไม่จำเป็นต้องมีประสบการณ์มาก่อน JavaScript Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 2 จากทั้งหมด 2 บทเรียน

บทเรียน “Rest และ Spread — อาร์เรย์และออบเจ็กต์ตามแนวทางที่เหมาะสม” ใช้เวลานานแค่ไหน

บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย

ฉันเขียนและรันโค้ดในบทเรียน JavaScript Academy นี้ได้ไหม

ได้ บทเรียน JavaScript Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ

บทเรียนทั้งหมดในหลักสูตรนี้

  1. พื้นฐานการแยกโครงสร้างอาร์เรย์และออบเจ็กต์
  2. Rest และ Spread — อาร์เรย์และออบเจ็กต์ตามแนวทางที่เหมาะสม
← กลับไปที่ JavaScript Academy