Readonly, Exclude, Extract, NonNullable
ประยุกต์ใช้ชนิดอรรถประโยชน์เพิ่มเติมเพื่อความไม่เปลี่ยนแปลงและการกรอง
Readonly, Exclude, Extract, NonNullable เป็นบทเรียน TypeScript Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 4 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน TypeScript Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส TypeScript Academy มีบทเรียนทั้งหมด 4 บทเรียน
ยินดีต้อนรับ
Readonly<T>
interface Config { host: string; port: number; }
const cfg: Readonly<Config> = { host: 'localhost', port: 3000 };
// cfg.host = 'remote'; // Error!Exclude<T, U>
type Status = 'pending' | 'active' | 'banned' | 'deleted';
type ActiveStatus = Exclude<Status, 'banned' | 'deleted'>;
// 'pending' | 'active'Extract<T, U>
type StringOrNumber = string | number | boolean;
type JustStrNum = Extract<StringOrNumber, string | number>;
// string | numberNonNullable<T>
type MaybeString = string | null | undefined;
type DefinitelyString = NonNullable<MaybeString>; // stringReturnType<T>
function fetchUser() { return { id: 1, name: 'Alice' }; }
type User = ReturnType<typeof fetchUser>; // { id: number; name: string }Parameters<T>
function add(a: number, b: number): number { return a + b; }
type AddParams = Parameters<typeof add>; // [number, number]InstanceType<T>
class HttpClient { get(url: string) { return fetch(url); } }
type Client = InstanceType<typeof HttpClient>; // HttpClientAwaited<T>
type A = Awaited<Promise<string>>; // string
type B = Awaited<Promise<Promise<number>>>; // numberการใช้ประเภทเครื่องมือหลายประเภทร่วมกัน
type SafeInput<T> = Readonly<Partial<NonNullable<T>>>;ประเภทเครื่องมือเป็นเพียงนามแฝงประเภท
ตรวจสอบอย่างรวดเร็ว
สรุปทบทวน
คำถามที่พบบ่อย
บทเรียน “Readonly, Exclude, Extract, NonNullable” ฟรีหรือไม่
ใช่ — ข้อความเต็มของ “Readonly, Exclude, Extract, NonNullable” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส TypeScript Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส TypeScript Academy มีบทเรียนทั้งหมด 4 บทเรียน
คุณจะเรียนรู้อะไรในบทเรียน “Readonly, Exclude, Extract, NonNullable”
ประยุกต์ใช้ชนิดอรรถประโยชน์เพิ่มเติมเพื่อความไม่เปลี่ยนแปลงและการกรอง คุณปฏิบัติ TypeScript Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน
คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน TypeScript Academy หรือไม่
ไม่จำเป็นต้องมีประสบการณ์มาก่อน TypeScript Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 4 จากทั้งหมด 4 บทเรียน
บทเรียน “Readonly, Exclude, Extract, NonNullable” ใช้เวลานานแค่ไหน
บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย
ฉันเขียนและรันโค้ดในบทเรียน TypeScript Academy นี้ได้ไหม
ได้ บทเรียน TypeScript Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ
บทเรียนทั้งหมดในหลักสูตรนี้
- Partial และ Required: การสลับสถานะเสริม
- Pick และ Omit: การเลือกพร็อพเพอร์ตี
- Record: การแมปคีย์กับชนิดค่า
- Readonly, Exclude, Extract, NonNullable