JavaScript Function bind()
- Kabla JS Function Apply
- Pya JS kusafisha
Function Borrowing
kwa kutumi method ya bind(), classi moja inaweza kumaliza method ya classi nyingine.
mivuno hii inatokana na uundaji wa 2 classi (person na member).
classi ya member inaumilia method ya classi ya person kwa sababu ya method ya fullname:
实例
const person = { firstName:\"Bill\", lastName: "Gates", fullName: function () { return this.firstName + \" \" + this.lastName; } } const member = { firstName:\"Hege\", lastName: "Nilsen", } let fullName = person.fullName.bind(member);
kutumia this
kwa uangalifu inafaa kutumi method ya bind() kuwasaidia kuzima this.
katika mivuno hii, classi ya person ina method ya display. katika method ya display,this ina maana yake ni classi ya person:
实例
const person = { firstName:\"Bill\", lastName: "Gates", display: function () { let x = document.getElementById("demo"); x.innerHTML = this.firstName + " " + this.lastName; } } person.display();
wakati method inatumiwa kama callback functionthis itakutokwenda kuzuiwa.
mivuno hii itahakikisha kuonyesha jina lake kwa 3 sekunde, lakini itakuwa na undefined:
实例
const person = { firstName:\"Bill\", lastName: "Gates", display: function () { let x = document.getElementById("demo"); x.innerHTML = this.firstName + " " + this.lastName; } } setTimeout(person.display, 3000);
method ya bind() inasaidia kusoma hii.
katika mivuno hii, method ya bind() inatumiwa kuweka method ya person.display kwenye person.
hali hii itahidi inayitababisha jina lake kwa 3 sekunde
实例
const person = { firstName:\"Bill\", lastName: "Gates", display: function () { let x = document.getElementById("demo"); x.innerHTML = this.firstName + " " + this.lastName; } } let display = person.display.bind(person); setTimeout(display, 3000);
Nini this?
katika JavaScriptthis
inatoa nenojadwali.
inaingiakivujadwali inahusika na jinsi inayotumika (kutumia au kutumia).
kwa sababu ya maadili yake ya kutumia this
inaingia jadwali tofauti:
- katika matumizi ya jadwali
this
inaingia hiijadwali. - inaingia kwa kawaida
this
inaingiajadwali juu. - katika msaada
this
inaingiajadwali juu. - katika msaada, katika modi ya kina,
this
niundefined
. - katika matukio
this
inaingia kwa matukiojumla. - call()、apply() na bind() na mabaki ya matumizi yanaenda
this
inatoakila jadwali.
Kuja kuzingatia:this
hakina ni muasi. Ni neno. Huwezi kumwambia this
inaadili.
Tafadhali tazama:
Mwongozo:JavaScript this
- Kabla JS Function Apply
- Pya JS kusafisha