Yordamchi ob'ekt namunasi
Yordamchi ob'ekt namunasi bizga Scala dan keladi va bir xil nomga ega bo'lgan ob'ektlar va sinflarni birlashtirish usulidir. TypeScript-da shunga o'xshash foydali naqsh mavjud - biz uni hamroh ob'ekt namunasi deb ataymiz - biz tur va ob'ektni birlashtirish uchun foydalanishimiz mumkin. Bu shunday ko'rinadi:
turi Valyuta = {
birlik : 'YEVRO' | 'GBP' | 'JPY' | 'USD'
qiymat : raqam }
ruxsat bering Valyuta = { DEFAULT : 'USD' ,
dan ( qiymat : raqam , birlik = Valyuta . SUVGA ) : Valyuta {
qaytish { birlik , qiymat }
}
}
Esda tutingki, TypeScript-da turlar va qiymatlar alohida nom maydonlarida yashaydi; 226-betdagi “Deklaratsiyani birlashtirish” bo'limida bu haqda biroz ko'proq ma'lumot olasiz . Ya'ni, bir xil doirada siz bir xil nomga ega bo'lishingiz mumkin (bu misolda, Valyuta ) ham turga, ham qiymatga bog'langan. Yordamchi ob'ekt namunasi bilan biz nomni ikki marta e'lon qilish uchun ushbu alohida nom oralig'idan foydalanamiz: avval tur sifatida, keyin qiymat sifatida.
Ushbu naqsh bir nechta yoqimli xususiyatlarga ega. Bu sizga bitta nomning semantik qismi bo'lgan (masalan, Valyuta ) turdagi va qiymat ma'lumotlarini birgalikda guruhlash imkonini beradi. Shuningdek, u iste'molchilarga bir vaqtning o'zida ikkalasini ham import qilish imkonini beradi:
import { Valyuta } dan './valyuta'
ruxsat bering summasi : Valyuta = {
birlik : 'JPY' , qiymati : 83733.10 } ruxsat bering boshqaAmountTue = Valyuta . dan ( 330 , 'EUR' )
Valyuta turi sifatida foydalanish
Valyutadan qiymat sifatida foydalanish
Tur va ob'ekt semantik jihatdan bog'langan bo'lsa, ob'ekt turida ishlaydigan yordamchi usullarni ta'minlovchi ob'ekt namunasidan foydalaning.
Keling, funksiya turlari bilan tez-tez ishlatiladigan bir necha ilg'or texnikani ko'rib chiqaylik.
Do'stlaringiz bilan baham: |