การใช้งาน keyof type operator ใน TypeScript

14 Aug 2023,
Share: 
Cover image

สวัสดีครับ ในบทความนี้เราจะมาทําความรู้จักกับ keyof type operator ใน TypeScript กันครับ

keyof type operator คือการดึงเอา key ของ Object ออกมาเป็น literal type

เพื่อความเข้าใจมากขึ้นเรามาดูตัวอย่างกันครับ

type MyType = { a: boolean; b: string; 100: string };
type M = keyof MyType;

const v1: M = 'a'; // No Error
const v2: M = 'b'; // No Error
const v3: M = 100; // No Error
const v4: M = 1; // Error
const v5: M = 'aaa'; // Error
const v6: M = true; // Error

จากตัวอย่างด้านบน เราสร้าง type M จาก keyof MyType ดังนั้น Type M จะเป็น literal type ของ key ที่ อยู่ใน MyType ทําให้เมื่อเรานํา M ไปกำหนดให้กับตัวแปรใด ตัวแปรนั้นๆจะเก็บค่าเฉพาะ literal type ของ key ที่ อยู่ใน MyType เท่านั้น

เพื่อให้เห็นภาพมากขึ้นเรามาดูตัวอย่างการนำไปใช้งานดังนี้ครับ

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

let x = { a: 1, b: 2, c: 3, d: 4 };

getProperty(x, 'a');
getProperty(x, 'm'); // Error เพราะ property "m" ไม่มีใน x

Suggestion blogs

Ascii คือ อะไร?

Ascii คือ อะไร?ในระบบคอมพิวเตอร์ จะใช้เลขฐานสอง(0, 1) ในการทํางาน เลขฐานสอง 1 ตัว เราจะเรียกว่า 1 bit สามารถแทนสถานะได้ 2 สถานะ คือ 0 กับ 1 ถ้าเรานําเลขฐานสองมาร่วมกัน 8 ตัว(8 bit) เราจะเรียกว่า 1 Byte สามารถใช้แทนสถานะได้ถึง 256 สถานะ(2 ยกกําลัง 8) Ascii เป็นการกําหนดมาตรฐานเพื่อใช้ในระบบคอมพิวเตอร์ และอุกปรณ์ Digitall ต่างๆ โดยนําเลขฐานขนาด 1 Byte มาแทนตัว

ที่ดินมีกี่ประเภท

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

เปลี่ยนแบตเตอรี่รีโมทรถยนต์มิตซูบิชิ มิราจ (KOS)

สวัสดีครับ วันนี้ผมได้มีโอกาสเปลี่ยนแบตเตอรี่ของรีโมทของรถยนต์มิตซูบิชิ มิราจ ก็เลยนําวิธีการเปลี่ยนมาแบ่งปันกันครับ อุปกรณ์ที่ต้องใช้คือ


Copyright © 2019 - 2025 thiti.dev |  v1.56.0 |  Privacy policy | 

Build with ❤️ and Astro.

Github profile   Linkedin profile   Instagram   X profile   Nostr   Youtube channel   Telegram   Email contact   วงแหวนเว็บ