TypeScript တွင် Callback Functions များ
callback functions များအတွက်လည်း parameter အမျိုးအစားနှင့် return value အမျိုးအစားကို ဖော်ပြနိုင်သည်။ နမူနာကိုကြည့်ပါ:
function make(num: number, func: (num: number) => number): number {
return func(num);
}
ကျွန်ုပ်တို့၏ function ကို callback တစ်ခုနှင့် ခေါ်ကြည့်ကြမည်:
make(3, function(num: number): number {
return num ** 2;
});
ယခု အခြား callback တစ်ခုနှင့်:
make(3, function(num: number): number {
return num ** 3;
});
အောက်ပါကုဒ် run လိုက်လျှင် ရလဒ်ကဘာဖြစ်မည်နည်း ပြောပြပါ:
type Func = (num: number) => number;
function make(arr: number[], func: Func): number[] {
return arr.map(function(elem: number) {
return func(elem);
});
}
let res: number[] = make([1, 2, 3], function(num: number): number {
return num ** 2;
});
console.log(res);
အောက်ပါကုဒ်တွင် ပြုလုပ်ထားသောအမှားများကို ရှာဖွေပြီး ပြင်ဆင်ပါ:
type Func = (num: number) => number;
function make(arr: number, func: Func): number {
let sum = 0;
for (let elem of arr) {
sum += func(elem);
}
return sum;
}
let res: number[] = make([1, 2, 3], function(num): string {
return num ** 2;
});
console.log(res);