การดึงข้อมูลย่อยออกมา

TypeScript:
การดึงข้อมูลย่อยออกมา

วิธีการ:

ใน TypeScript, คุณสามารถตัดและแบ่งสตริงด้วยวิธีการเช่น substring(), slice(), และ includes() ของ ES6 สำหรับการค้นหาข้อความภายในสตริง

let fullString: string = "Hello, TypeScript enthusiasts!";

// คัดลอกจากอักขระที่ 7 ถึง 18
let substr: string = fullString.substring(7, 18);
console.log(substr); // แสดงผล: TypeScript

// การทำงานเดียวกันแต่ใช้ slice()
let sliced: string = fullString.slice(7, 18);
console.log(sliced); // แสดงผล: TypeScript

// ตรวจสอบว่ามีส่วนย่อยของสตริงหรือไม่
let exists: boolean = fullString.includes("TypeScript");
console.log(exists); // แสดงผล: true

ทำความเข้าใจลึกซึ้ง

มีครั้งหนึ่ง, การจัดการสตริงนั้นยุ่งยากมาก—นึกถึงฟังก์ชันสตริงของภาษา C JavaScript และ TypeScript ตอนนี้เสนอวิธีการที่จัดการกับ Unicode, เคารพการเข้ารหัสอักขระ, และทำงานโดยตรงกับออบเจ็กต์สตริง substring() และ slice() คล้ายกันแต่มีความแตกต่าง: slice() สามารถรับดัชนีลบ, คิดย้อนกลับจากท้าย substring() ถือว่าเป็นศูนย์ ในสถานการณ์ที่ต้องการประสิทธิภาพ, การเลือกหนึ่งมากกว่าอีกอันอาจมีความสำคัญ, แต่สำหรับการใช้งานประจำวัน, มันค่อนข้างเป็นไปในทิศทางเดียวกัน

// ใช้ดัชนีลบกับ slice
let endSliced: string = fullString.slice(-25, -7);
console.log(endSliced); // แสดงผล: Hello, Type

สำหรับ includes(), มันเป็นข้อได้เปรียบในเรื่องของการอ่านมากกว่า indexOf() แบบคลาสสิก, ทำให้ความตั้งใจของคุณชัดเจนทันทีที่มองเห็น ไม่ต้องใช้ if (string.indexOf('some text') !== -1); เพียงแค่ if (string.includes('some text')) เท่านั้น

ดูเพิ่มเติม

  • คู่มือ TypeScript เกี่ยวกับสตริง, สำหรับข้อมูลเพิ่มเติมเกี่ยวกับการใช้งานชนิด ‘string’: TypeScript String
  • MDN Web Docs เกี่ยวกับวิธีการของสตริงใน JavaScript, ที่ใช้ได้กับ TypeScript: MDN String
  • เพื่อการเข้าใจเพิ่มเติมเกี่ยวกับ Unicode และ JavaScript (และด้วยเหตุนี้จึงเป็น TypeScript), ตรวจสอบ Understanding JavaScript’s internal character encoding: UCS-2? UTF-16?