bind နည်းလမ်း

bind နည်းလမ်းသည် ဖန်ရှင်တစ်ခုကို context ချိတ်ဆက်ရန် ဖြစ်သည်။ ပထမဆုံး parameter အဖြစ် context ကို ပေးပို့သင့်ပြီး နောက်ထပ် parameters များသည် ဖန်ရှင်၏ parameters များဖြစ်သည်။ ဤနည်းလမ်းသည် ဖန်ရှင်အသစ်တစ်ခုကို ပြန်ပေးသည်။ ၎င်းအတွင်း၌ this သည် ပေးပို့ထားသော context နှင့် ညီမျှလိမ့်မည်။

Syntax

javascriptဖန်ရှင်.bind(context, parameter1, parameter2...);

ဥပမာ

ကျွန်ုပ်တို့တွင် input တစ်ခုရှိသည်ဆိုပါစို့။

html<input id="elem" value="text">

ထို input သို့ link သည် variable elem ထဲတွင် ရေးထားသည်ဆိုပါစို့။

javascriptlet elem = document.querySelector('#elem');

ကျွန်ုပ်တို့တွင် အောက်ပါဖန်ရှင် func လည်းရှိသည်ဆိုပါစို့။

javascriptfunction func(param1, param2) {
  console.log(this.value + param1 + param2);
}

bind ကိုသုံးပြီး ဖန်ရှင် func ၏ copy တစ်ခုဖြစ်သော်လည်း ၎င်းအတွင်း this သည် အမြဲတမ်း elem နှင့် ညီမျှမည့် ဖန်ရှင်အသစ်တစ်ခု လုပ်ကြည့်ရအောင်။

javascriptlet newFunc = func.bind(elem);

ယခု variable newFunc ထဲတွင် ဖန်ရှင်တစ်ခု ရှိနေသည်။ ပထမ parameter အနေဖြင့် '1' ကိုပေးပြီး၊ ဒုတိယ parameter အနေဖြင့် '2' ကိုပေး၍ ၎င်းကို ခေါ်ကြည့်ကြမည်။

javascriptnewFunc('1', '2');

အားလုံးကို စုစည်းကြည့်ကြမည်။

javascriptlet 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 ကို ပြန်လည်ရေးသားနိုင်သည်။

javascriptlet func = func.bind(elem);

ဒါကိုလည်း ကြည့်ပါ

  • call နည်းလမ်း,
    context ဖြင့် ဖန်ရှင်ကို ခေါ်ဆိုသည်။
  • apply နည်းလမ်း,
    context ဖြင့် ဖန်ရှင်ကို ခေါ်ဆိုသည်။