ruxsat bering zaxira : Zaxira = (
dan : Sana ,
toOrDestination : Sana | ip ,
maqsad ?: ip
) => {
agar ( toOrDestination misol Sana && maqsad !== aniqlanmagan ) {
// Bir tomonlama sayohatni bron qilish
} boshqa agar ( turi toOrDestination === 'string' ) { // Ikki tomonga sayohatni bron qiling
}
}
Haddan tashqari yuklanish imzolarini saqlash
Umuman olganda, haddan tashqari yuklangan funksiya turini e'lon qilishda har bir ortiqcha yuk belgisi (masalan, Zaxira ) dastur imzosiga (masalan, zaxira ) tayinlanishi kerak. Bu shuni anglatadiki, dastur imzosini e'lon qilishda siz haddan tashqari umumiy bo'lishingiz mumkin, chunki sizning barcha ortiqcha yuklaringiz unga tayinlanishi mumkin. Masalan, bu ishlaydi:
ruxsat bering zaxira : zaxira = (
dan : har qanday ,
toOrDestination : har qanday , maqsad? : har qanday ) => { // ...
}
|
Haddan tashqari yuklardan foydalanilganda, funksiyani amalga oshirishni osonlashtirish uchun dastur imzosini iloji boricha aniq saqlashga harakat qiling. Bu har qanday sanadan ko'ra sanani afzal ko'rish va Sana | birlashmasini anglatadi Bizning misolimizdagi har qanday string .
Nima uchun turlarni tor saqlash berilgan imzo bilan funksiyani amalga oshirishni osonlashtiradi? Agar siz istalgan parametr sifatida kiritsangiz va uni Date sifatida ishlatmoqchi bo'lsangiz , uni xavfsiz ishlatish va avtomatik to'ldirishdan foydalanish uchun bu aslida sana ekanligini TypeScript-ga isbotlashingiz kerak:
funktsiyasi getMonth ( sana : har qanday ) : raqam | aniqlanmagan {
agar ( sana misol Sana ) { qaytish sana . getMonth ()
}
}
Agar siz parametrni sana sifatida oldindan yozgan bo'lsangiz, amalga oshirishda qo'shimcha ish qilishingiz shart emas:
|
Do'stlaringiz bilan baham: |