bind နည်းလမ်း
bind နည်းလမ်းသည် ဖန်ရှင်တစ်ခုကို context ချိတ်ဆက်ရန် ဖြစ်သည်။
ပထမဆုံး parameter အဖြစ် context ကို ပေးပို့သင့်ပြီး
နောက်ထပ် parameters များသည် ဖန်ရှင်၏ parameters များဖြစ်သည်။
ဤနည်းလမ်းသည် ဖန်ရှင်အသစ်တစ်ခုကို ပြန်ပေးသည်။
၎င်းအတွင်း၌ this သည် ပေးပို့ထားသော
context နှင့် ညီမျှလိမ့်မည်။
Syntax
ဖန်ရှင်.bind(context, parameter1, parameter2...);
ဥပမာ
ကျွန်ုပ်တို့တွင် input တစ်ခုရှိသည်ဆိုပါစို့။
<input id="elem" value="text">
ထို input သို့ link သည် variable
elem ထဲတွင် ရေးထားသည်ဆိုပါစို့။
let elem = document.querySelector('#elem');
ကျွန်ုပ်တို့တွင် အောက်ပါဖန်ရှင်
func လည်းရှိသည်ဆိုပါစို့။
function func(param1, param2) {
console.log(this.value + param1 + param2);
}
bind ကိုသုံးပြီး ဖန်ရှင် func ၏
copy တစ်ခုဖြစ်သော်လည်း ၎င်းအတွင်း this သည်
အမြဲတမ်း elem နှင့် ညီမျှမည့် ဖန်ရှင်အသစ်တစ်ခု
လုပ်ကြည့်ရအောင်။
let newFunc = func.bind(elem);
ယခု variable newFunc ထဲတွင်
ဖန်ရှင်တစ်ခု ရှိနေသည်။ ပထမ parameter
အနေဖြင့် '1' ကိုပေးပြီး၊ ဒုတိယ parameter
အနေဖြင့် '2' ကိုပေး၍ ၎င်းကို ခေါ်ကြည့်ကြမည်။
newFunc('1', '2');
အားလုံးကို စုစည်းကြည့်ကြမည်။
let elem = document.getElementById('elem');
function func(param1, param2) {
console.log(this.value + param1 + param2);
}
let newFunc = func.bind(elem);
newFunc('1', '2'); // 'text12' ကိုထုတ်ပြမည်
ဥပမာ
bind ၏ရလဒ်ကို အသစ်ဖန်ရှင် newFunc
ထဲတွင် ရေးထည့်ရန် မလိုအပ်ပါ။
သာမန် func ကို ပြန်လည်ရေးသားနိုင်သည်။
let func = func.bind(elem);