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

อาร์เรย์แบบมีชนิดข้อมูล: T[] และ Array<T>

กำหนดชนิดให้อาร์เรย์และป้องกันการผสมค่าที่เข้ากันไม่ได้

อาร์เรย์แบบมีชนิดข้อมูล: T[] และ Array<T> เป็นบทเรียน TypeScript Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 1 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน TypeScript Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส TypeScript Academy มีบทเรียนทั้งหมด 4 บทเรียน

ยินดีต้อนรับ

TypeScript ช่วยให้คุณกำหนดชนิดให้อาร์เรย์ เพื่อให้เก็บได้เฉพาะค่าชนิดที่กำหนด บทเรียนนี้ครอบคลุมรูปแบบไวยากรณ์สองแบบและกรณีการใช้งานของแต่ละแบบ

ไวยากรณ์ T[]

วิธีที่ใช้บ่อยที่สุดในการกำหนดชนิดให้อาร์เรย์คือเติม [] ต่อท้ายชนิดของสมาชิก วิธีนี้เรียกว่าไวยากรณ์แบบย่อ
const numbers: number[] = [1, 2, 3];
const names: string[] = ['Alice', 'Bob'];
const flags: boolean[] = [true, false, true];

ไวยากรณ์ทั่วไป Array<T>

ไวยากรณ์ทั่วไป Array เทียบเท่ากับ T[] บางทีมเลือกใช้รูปแบบนี้เพื่อให้สอดคล้องกับชนิดทั่วไปอื่น ๆ
const scores: Array<number> = [95, 87, 73];
const tags: Array<string> = ['typescript', 'beginner'];

ข้อผิดพลาดของชนิดในอาร์เรย์

หากคุณพยายามเพิ่มค่าที่มีชนิดไม่ถูกต้อง TypeScript จะรายงานข้อผิดพลาด วิธีนี้ป้องกันไม่ให้อาร์เรย์ที่มีหลายชนิดทำให้เกิดข้อผิดพลาด
const ids: number[] = [1, 2, 3];
// ids.push('four'); // Error: Argument of type 'string' is not assignable to 'number'

ชนิดอาร์เรย์ที่อนุมานได้

หากคุณกำหนดค่าเริ่มต้นให้อาร์เรย์ด้วยค่าใด ๆ TypeScript จะอนุมานชนิดของสมาชิกให้ อาร์เรย์ว่างจะอนุมานเป็น `never[]` ดังนั้นควรระบุชนิดให้อาร์เรย์ว่างเสมอ
const nums = [1, 2, 3];    // inferred: number[]
const mixed = [1, 'hi'];   // inferred: (string | number)[]
const empty: string[] = []; // must annotate

อาร์เรย์ของอ็อบเจกต์

คุณสามารถกำหนดชนิดให้อาร์เรย์ของอ็อบเจกต์ โดยใช้อินเทอร์เฟซหรือนามแฝงชนิดเป็นชนิดของสมาชิก
interface User { id: number; name: string; }
const users: User[] = [
  { id: 1, name: 'Alice' },
  { id: 2, name: 'Bob' },
];

เมธอดอาร์เรย์ทั่วไปมีชนิดกำกับ

TypeScript เข้าใจเมธอดอาร์เรย์ที่มีมาให้ในตัว map, filter และ find ล้วนคืนผลลัพธ์ที่มีชนิดถูกต้อง
const nums: number[] = [1, 2, 3, 4];
const doubled: number[] = nums.map(n => n * 2);
const evens: number[] = nums.filter(n => n % 2 === 0);

อาร์เรย์ซ้อนกัน

กำหนดชนิดให้อาร์เรย์สองมิติด้วยการซ้อนไวยากรณ์ชนิดอาร์เรย์
const matrix: number[][] = [
  [1, 2, 3],
  [4, 5, 6],
];

อาร์เรย์ชนิดสหภาพ

หากต้องการให้อาร์เรย์รองรับหลายชนิด ให้ใช้ชนิดสหภาพเป็นชนิดของสมาชิก
const mixed: (string | number)[] = ['Alice', 1, 'Bob', 2];

การแยกโครงสร้างอาร์เรย์พร้อมชนิด

เมื่อคุณแยกโครงสร้างอาร์เรย์ TypeScript จะอนุมานชนิดของตัวแปรที่แยกออกมาตามตำแหน่ง
const coords: number[] = [10, 20];
const [x, y] = coords; // x: number, y: number

การเลือกใช้ T[] หรือ Array<T>

ทั้งสองรูปแบบเหมือนกันสำหรับ TypeScript ใช้ T[] กับชนิดแบบง่าย และใช้ Array เมื่อชนิดของสมาชิกมีความยาวมาก หรือเมื่อใช้ชนิดทั่วไปอื่น ๆ เพื่อให้อ่านได้ชัดเจน

ตรวจสอบอย่างรวดเร็ว

TypeScript อนุมานอะไรให้กับอาร์เรย์ว่างที่ประกาศเป็น `const list = []`

สรุปทบทวน

ใช้ T[] หรือ Array เพื่อกำหนดชนิดให้อาร์เรย์ใน TypeScript ควรระบุชนิดให้อาร์เรย์ว่างเสมอ TypeScript บังคับใช้ชนิดของสมาชิกกับ push, map, filter และการดำเนินการอื่น ๆ ของอาร์เรย์

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

บทเรียน “อาร์เรย์แบบมีชนิดข้อมูล: T[] และ Array<T>” ฟรีหรือไม่

ใช่ — ข้อความเต็มของ “อาร์เรย์แบบมีชนิดข้อมูล: T[] และ Array<T>” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส TypeScript Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส TypeScript Academy มีบทเรียนทั้งหมด 4 บทเรียน

คุณจะเรียนรู้อะไรในบทเรียน “อาร์เรย์แบบมีชนิดข้อมูล: T[] และ Array<T>”

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

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

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

บทเรียน “อาร์เรย์แบบมีชนิดข้อมูล: T[] และ Array<T>” ใช้เวลานานแค่ไหน

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

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

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

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

  1. อาร์เรย์แบบมีชนิดข้อมูล: T[] และ Array
  2. อาร์เรย์ Readonly และข้อมูลที่แก้ไขไม่ได้
  3. ทูเพิล: อาร์เรย์แบบมีชนิดข้อมูลและความยาวคงที่
  4. Enum: ค่าคงที่ตัวเลขและข้อความ
← กลับไปที่ TypeScript Academy