⊗tsSpGnTV 30 of 37 menu

ตัวแปรทั่วไปใน TypeScript

เพื่อความเข้าใจที่ดีขึ้นเกี่ยวกับแนวคิดของ generics ลองสร้างฟังก์ชันแรกของเราขึ้นมา - ฟังก์ชันเอกลักษณ์ ฟังก์ชันดังกล่าว จะคืนค่าสิ่งที่ได้รับมาโดยตรง - ด้วย ประเภทเดียวกัน

เริ่มต้น ลองเขียนรูปแบบของ ฟังก์ชันของเราแยกกันก่อน

เขียนฟังก์ชันที่รับพารามิเตอร์เป็น ตัวเลขและคืนค่าเป็นตัวเลข:

function func(data: number): number { return data; }

ตอนนี้เขียนฟังก์ชันที่รับพารามิเตอร์ เป็นสตริงและคืนค่าเป็นสตริง:

function func(data: string): string { return data; }

สมมติว่าตอนนี้เราต้องการทำให้ ทั้งหมดนี้ทำได้ด้วยฟังก์ชันเดียว นั่นคือเรา ต้องการทำ การกำหนดประเภททั่วไป

เพื่อการนี้เราจะใช้ ตัวแปรทั่วไป ซึ่งเก็บรักษาประเภทข้อมูลไว้ ตัวแปรดังกล่าวถูกประกาศ ในวงเล็บมุมก่อนวงเล็บกลม ที่มีพารามิเตอร์ของฟังก์ชัน ลองประกาศ ตัวแปรดังกล่าว โดยตั้งชื่อเป็น T (สามารถตั้งชื่ออะไรก็ได้):

function func <T>(พารามิเตอร์ตรงนี้) { return data; }

หลังจากนั้นเราจะมีตัวแปร T, ซึ่งสามารถนำมาใช้เพื่อ เก็บประเภทของพารามิเตอร์ จากนั้น ระบุมันเป็นประเภทของค่า ที่คืนกลับมา

ระบุประเภทให้กับพารามิเตอร์ของเรา ในรูปแบบของตัวแปรของเรา:

function func <T>(data: T) { return data; }

ผลที่ได้คือ พารามิเตอร์สามารถถูกส่งเข้ามา ในประเภทใดก็ได้ และประเภทนั้นจะถูกเก็บไว้ในตัวแปร T ของเรา

ตอนนี้ใช้ค่าของตัวแปร T เพื่อระบุผลลัพธ์ของฟังก์ชัน:

function func <T>(data: T): T { return data; }

ตอนนี้ผลที่ได้คือ ประเภทผลลัพธ์ของฟังก์ชัน จะได้มาจากประเภทของพารามิเตอร์ ลองทดสอบดู

เรียกฟังก์ชันด้วยตัวเลข:

console.log( func(3) ); // แสดงผล 3

เรียกฟังก์ชันด้วยสตริง:

console.log( func('x') ); // แสดงผล 'x'

สร้างฟังก์ชันที่รับพารามิเตอร์ เป็นตัวเลขสองตัว หรือสตริงสองสตริง ผลลัพธ์ของฟังก์ชันต้องคืนค่า เป็นผลรวมของพารามิเตอร์

ไทย
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣTürkmenTürkçeЎзбекOʻzbekTiếng Việt
เราใช้คุกกี้สำหรับการทำงานของเว็บไซต์ การวิเคราะห์ และการปรับเนื้อหาให้เหมาะสมส่วนบุคคล การประมวลผลข้อมูลเกิดขึ้นตาม นโยบายความเป็นส่วนตัว.
ยอมรับทั้งหมด ปรับแต่ง ปฏิเสธ