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

ชนิดข้อมูล keyof และการเข้าถึงด้วยดัชนี (เบื้องต้น)

ใช้ keyof สร้างยูเนียนของชื่อคุณสมบัติ และใช้ชนิดข้อมูลการเข้าถึงด้วยดัชนี (T[K] / T["prop"]) เพื่ออ่านชนิดข้อมูลคุณสมบัติอย่างปลอดภัย

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

บทนำ

เป้าหมาย: สร้างฟังก์ชันช่วยที่ปลอดภัยยิ่งขึ้นโดยใช้คีย์ของ ซึ่งให้ยูเนียนของชื่อคุณสมบัติ และการเข้าถึงแบบดัชนี (T[K]) เพื่ออ่านชนิดของคุณสมบัติ

คีย์ของ

คีย์ของ สร้างยูเนียนของชื่อคุณสมบัติในชนิดหนึ่ง เช่น "id" | "name" | "email"

interface User {
  id: number;
  name: string;
  email?: string;
}

type UserKeys = keyof User;  // "id" | "name" | "email"

คีย์ของชนิดของ

ใช้คีย์ของชนิดของเพื่อรับคีย์จากค่าหรือออบเจ็กต์ สำหรับกำหนดชนิดพารามิเตอร์

const SETTINGS = {
  theme: "dark",
  lang: "en",
} as const;

type SettingKey = keyof typeof SETTINGS; // "theme" | "lang"

การเข้าถึงแบบดัชนี

การเข้าถึงแบบดัชนีส่งคืนชนิดของคุณสมบัติ: User["name"] คือ string

interface User {
  id: number;
  name: string;
  email?: string;
}

type NameType = User["name"]; // string

ฟังก์ชันช่วย getProperty

รวมคีย์ของกับK ที่ขยายจากคีย์ของ Tเพื่อจำกัดคีย์และส่งคืนชนิด T[K] ที่แม่นยำ

function getProperty<T, K extends keyof T>(obj: T, key: K): T[K] {
  return obj[key];
}

const u = { id: 1, name: "Ada" };
const v1 = getProperty(u, "name"); // string
const v2 = getProperty(u, "id");   // number
console.log(v1.toUpperCase(), v2.toFixed(0));

เคล็ดลับ

เคล็ดลับ:

  • เลือกใช้คีย์ของชนิดของสำหรับคีย์จากออบเจ็กต์
  • ใช้T[K]เพื่อสะท้อนชนิดคุณสมบัติโดยไม่ต้องทำแบบจำลองซ้ำ
  • หลีกเลี่ยงคีย์ที่กำหนดเป็นสตริงล้วน และพึ่งพายูเนียนเพื่อความปลอดภัย

ตรวจสอบการเข้าถึงแบบดัชนี

ตรวจสอบอย่างรวดเร็ว: T[K] แทนอะไร

สรุปทบทวน

สรุปทบทวน: คีย์ของ ให้ยูเนียนของคีย์ คีย์ของชนิดของ ดึงคีย์จากค่า และ T[K] อ่านชนิดคุณสมบัติ เหมาะอย่างยิ่งสำหรับฟังก์ชันช่วยที่ปลอดภัย

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

บทเรียน “ชนิดข้อมูล keyof และการเข้าถึงด้วยดัชนี (เบื้องต้น)” ฟรีหรือไม่

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

คุณจะเรียนรู้อะไรในบทเรียน “ชนิดข้อมูล keyof และการเข้าถึงด้วยดัชนี (เบื้องต้น)”

ใช้ keyof สร้างยูเนียนของชื่อคุณสมบัติ และใช้ชนิดข้อมูลการเข้าถึงด้วยดัชนี (T[K] / T["prop"]) เพื่ออ่านชนิดข้อมูลคุณสมบัติอย่างปลอดภัย คุณปฏิบัติ TypeScript Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน

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

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

บทเรียน “ชนิดข้อมูล keyof และการเข้าถึงด้วยดัชนี (เบื้องต้น)” ใช้เวลานานแค่ไหน

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

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

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

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

  1. ฟังก์ชันเจเนอริกและข้อจำกัด (extends, พารามิเตอร์ค่าเริ่มต้น)
  2. Partial, Readonly, Record, Pick และ Omit
  3. ชนิดข้อมูล keyof และการเข้าถึงด้วยดัชนี (เบื้องต้น)
← กลับไปที่ TypeScript Academy