ประเภทสตริง literal ใน TypeScript

การใช้ตัวดำเนินการ union type นั้นสามารถใช้เพื่อรวม ไม่เพียงแต่ประเภทในตัวเท่านั้น แต่รวมถึงสตริงด้วย เพื่อเป็นตัวอย่าง เรามาทำให้ตัวแปรสามารถรับค่าได้เพียง หนึ่งในสองค่าสตริงนี้:

typescriptlet str: 'success' | 'error';

มาลองทดสอบกัน กำหนดค่าให้ตัวแปรเป็นหนึ่ง ในสตริง:

typescriptstr = 'success';

กำหนดค่าที่สอง:

typescriptstr = 'error';

แต่หากพยายามกำหนดค่าสตริงอื่นจะทำให้เกิด ข้อผิดพลาด:

typescriptstr = 'eee'; // ข้อผิดพลาด
Задание 1

จงทำให้ตัวแปรสามารถรับค่าได้เพียงหนึ่งในสามค่า: 'error', 'warning' หรือ 'success'