JavaScript Function bind()
- ບ່ອນໜ້າຫນ້າທີ່ຫນ້າຫນັງ JS ການດຳເນີນພາສາ Apply
- ບ່ອນໜ້າຫນ້າທີ່ໃຫມ່ JS ການປິດກັນ
ການຂຶ້ນກັບພາສາວຽກງານ (Function Borrowing)
ທີ່ໃຊ້ bind() 方法ມີສະແດງວ່າໂອກາດອີກໜຶ່ງຈະມີການຂຶ້ນກັບຂອງອີກໜຶ່ງ
ບົດການນີ້ຈະສ້າງໂອກາດ 2 ອັນ (person ແລະ member)。
member ມີການຂຶ້ນກັບຂອງ person ທີ່ມີພາສາ 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);
ຄວາມສະແດງ this
ບາງຄັ້ງຈະຕ້ອງໃຊ້ bind() 方法ເພື່ອປ້ອງກັນຈາກການສູນເສຍ this.
ໃນບົດການນີ້ person ມີໂອກາດ display。ໃນພາສາ display,this ແມ່ນສະແດງເປັນໂອກາດ person:
ຄວາມປະກອບ
const person = { firstName:\"Bill\", lastName: "Gates", display: function () { let x = document.getElementById("demo"); x.innerHTML = this.firstName + " " + this.lastName; } } person.display();
ບ່ອນທີ່ພາສາຈະໃຊ້ງານວຽກງານຄືນຄືນthis ຈະສູນເສຍ。
ບົດການນີ້ຈະພະຍາຍາມສະແດງຊື່ຜູ້ຄົນພາຍໃນ 3 ວັນນາທີນັ້ນ,ແຕ່ຈະສະແດງ undefined:
ຄວາມປະກອບ
const person = { firstName:\"Bill\", lastName: "Gates", display: function () { let x = document.getElementById("demo"); x.innerHTML = this.firstName + " " + this.lastName; } } setTimeout(person.display, 3000);
bind() 方法ໄດ້ແກ້ໄຂບັນຫານີ້。
bind() 方法ໃຊ້ໃນຄວາມປະກອບເພື່ອມັດຕິດ person.display ຫາ person。
ບົດການນີ້ຈະສະແດງຊື່ຜູ້ຄົນພາຍໃນ 3 ວັນນາທີນັ້ນ:
ຄວາມປະກອບ
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);
ວ່າສານຄຳ this ແມ່ນຫຍັງ?
ໃນ JavaScriptthis
ສານຄຳກ່ຽວຂ້ອງກັບວັດຖຸ.
ກ່ຽວຂ້ອງກັບຄວາມທີ່ສານຄຳກ່ຽວຂ້ອງກັບວັດຖຸຕາມວິທີການດຳເນີນພາສາຂອງການໃຊ້
ຕາມວິທີການນໍາໃຊ້ this
ທີ່ກ່ຽວຂ້ອງກັບວັດຖຸຕ່າງກັນ
- ໃນການດຳເນີນພາສາວັດຖຸ
this
ກ່ຽວຂ້ອງກັບວັດຖຸ. - ທີ່ນຳໃຊ້ດ້ວຍອິດສະຫນາມ
this
ກ່ຽວຂ້ອງກັບວັດຖຸໂລກ. - ໃນການດຳເນີນພາສາ
this
ກ່ຽວຂ້ອງກັບວັດຖຸໂລກ. - ໃນການດຳເນີນພາສາ, ໃນການນຳໃຊ້ກົດລະບຽບຄວາມຕາຍ
this
ແມ່ນundefined
. - ໃນການກະທົບ
this
ທີ່ກວດສອບການກະທົບວັດຖຸ. - ການໃຊ້ພວກມາດ, apply() ແລະ bind() ແລະອື່ນໆທີ່ສາມາດນຳໃຊ້
this
ກ່ຽວຂ້ອງກັບບັນດາວັດຖຸ.
ຄວາມຕ້ອງການ:this
ບໍ່ແມ່ນສິນລະບົບ. ມັນເປັນສານຄຳ. ທ່ານບໍ່ສາມາດດັດແປງມັນ this
ຄວາມທີ່.
ບໍ່ດັ່ງນັ້ນເບິ່ງ:
ການສອນ:JavaScript this
- ບ່ອນໜ້າຫນ້າທີ່ຫນ້າຫນັງ JS ການດຳເນີນພາສາ Apply
- ບ່ອນໜ້າຫນ້າທີ່ໃຫມ່ JS ການປິດກັນ