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

คีย์ออฟคืออะไร
ตัวดำเนินการ keyof คืออะไร
ตัวดำเนินการ keyof สร้างชนิดที่ประกอบด้วยคีย์ทั้งหมดของชนิดออบเจ็กต์
ตัวอย่าง:
type Person = {
name: string;
age: number;
};
type PersonKeys = keyof Person;ชนิดสำหรับค้นหาคืออะไร
ชนิดสำหรับค้นหาคืออะไร
ชนิดสำหรับค้นหาใช้วงเล็บเหลี่ยม [] เพื่อดึงชนิดของคุณสมบัติเฉพาะจากออบเจ็กต์
ตัวอย่าง:
type Person = {
name: string;
age: number;
};
type NameType = Person['name'];การใช้คีย์ออฟร่วมกับชนิดสำหรับค้นหา
การใช้ keyof ร่วมกับชนิดสำหรับค้นหา
คุณสามารถใช้ keyof และชนิดสำหรับค้นหาร่วมกันเพื่อสร้างข้อจำกัดชนิดที่ปรับเปลี่ยนได้และนำกลับมาใช้ซ้ำได้
function getProperty<T, K extends keyof T>(obj: T, key: K): T[K] {
return obj[key];
}กรณีการใช้งานคีย์ออฟและชนิดสำหรับค้นหา
กรณีการใช้งาน keyof และชนิดสำหรับค้นหา
กรณีการใช้งานทั่วไปมีดังนี้:
- การสร้างส่วนติดต่อโปรแกรมแบบไดนามิก
- การเข้าถึงคุณสมบัติในออบเจ็กต์อย่างปลอดภัยด้านชนิด
- การเพิ่มความยืดหยุ่นให้โค้ดด้วยข้อจำกัดชนิด
ตัวอย่างการใช้งานจริง
ตัวอย่างการใช้งานจริง
ตัวอย่างการใช้งานจริงที่รวม keyof และชนิดสำหรับค้นหาเข้าด้วยกันมีดังนี้:
type User = {
id: number;
username: string;
};
function printKey<T, K extends keyof T>(obj: T, key: K): void {
console.log(`${key}: ${obj[key]}`);
}
const user: User = { id: 1, username: 'John' };
printKey(user, 'username');ประโยชน์ของการใช้คีย์ออฟและชนิดสำหรับค้นหา
ประโยชน์ของการใช้ keyof และชนิดสำหรับค้นหา
ฟีเจอร์เหล่านี้มีประโยชน์ดังนี้:
- การเข้าถึงคุณสมบัติแบบไดนามิกพร้อมความปลอดภัยด้านชนิด
- โค้ดที่นำกลับมาใช้ซ้ำได้และขยายขนาดได้
- การป้องกันข้อผิดพลาดที่ดีขึ้นขณะคอมไพล์
แบบฝึกหัด
แบบฝึกหัด
สร้างฟังก์ชันโดยใช้ keyof และชนิดสำหรับค้นหาเพื่อเข้าถึงคุณสมบัติจากออบเจ็กต์ผู้ใช้แบบไดนามิก ลองทำดู
ทบทวนคีย์ออฟและชนิดสำหรับค้นหา
ขอแสดงความยินดี
คุณได้เรียนรู้วิธีใช้ keyof และชนิดสำหรับค้นหาเพื่อทำให้โค้ดเป็นแบบไดนามิกและปลอดภัยด้านชนิดแล้ว ขอให้ฝึกฝนต่อไปเพื่อเชี่ยวชาญฟีเจอร์ขั้นสูงเหล่านี้ของ TypeScript

คำถามที่พบบ่อย
บทเรียน “ชนิด Keyof และชนิด Lookup” ฟรีหรือไม่
ใช่ — ข้อความเต็มของ “ชนิด Keyof และชนิด Lookup” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส TypeScript Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส TypeScript Academy มีบทเรียนทั้งหมด 3 บทเรียน
คุณจะเรียนรู้อะไรในบทเรียน “ชนิด Keyof และชนิด Lookup”
ค้นพบวิธีดึงและอ้างอิงคีย์กับคุณสมบัติจากชนิดข้อมูลที่มีอยู่ เพื่อสร้างคำจำกัดความชนิดข้อมูลแบบไดนามิกและนำกลับมาใช้ซ้ำได้ คุณปฏิบัติ TypeScript Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน
คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน TypeScript Academy หรือไม่
ไม่จำเป็นต้องมีประสบการณ์มาก่อน TypeScript Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 1 จากทั้งหมด 3 บทเรียน
บทเรียน “ชนิด Keyof และชนิด Lookup” ใช้เวลานานแค่ไหน
บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย
ฉันเขียนและรันโค้ดในบทเรียน TypeScript Academy นี้ได้ไหม
ได้ บทเรียน TypeScript Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ
บทเรียนทั้งหมดในหลักสูตรนี้
- ชนิด Keyof และชนิด Lookup
- ชนิดข้อมูลแบบแมป
- ชนิดข้อมูลแบบอินเทอร์เซกชันและยูเนียน