คำนำ
ในความเป็นจริงจุดง่ายๆของฟังก์ชั่นการโทรกลับคือเมื่อมีสองฟังก์ชั่น A และ B เมื่อ A ถูกส่งไปยัง B เป็นพารามิเตอร์และดำเนินการใน B จะเป็นฟังก์ชันการโทรกลับ หาก A เป็นฟังก์ชั่นที่ไม่ระบุชื่อมันเป็นฟังก์ชันการโทรกลับที่ไม่ระบุชื่อ มาใช้ตัวอย่างเพื่ออธิบายรายละเอียดวิธีการใช้ฟังก์ชันการโทรกลับ JavaScript
ตัวอย่าง
นานมาแล้วมีผู้ชายคนหนึ่ง
Var Person;
เขาเป็นบุคคลนั่นคือวัตถุ
person = {}; // ในจาวาสคริปต์การจัดฟันแบบหยิกเป็นตัวแทนของวัตถุเขามีชื่อชื่อ Xiao Ming
person.name = 'Xiao Ming';
มาดูกันว่ามันเรียกว่า Xiao Ming จริง ๆ หรือไม่
การแจ้งเตือน (person.name);
วันหนึ่ง Xiao Ming หยิบขึ้นมา 10 หยวน
person.money = '10 หยวน ';
เขาต้องใช้จ่ายเงินดังนั้นเขาจึงวางแผนที่จะใช้จ่าย 10 หยวน
Xiao Ming มีวิธี spendMoney ()
person.spendMoney = function () {Alert (this.name +"ใช้" +this.money +"ฉันซื้อหนังสือการ์ตูนสำหรับ RMB!"); -วิ่ง:
person.spendMoney ();
เครื่องเตือนใจป๊อปอัพ: Xiao Ming ซื้อหนังสือการ์ตูนสำหรับ 10 หยวน
โอเคคำถามคือเสี่ยวหมิงต้องซื้อหนังสือการ์ตูนหรือไม่ถ้าเขาใช้จ่ายเงิน? มันจะต้องไม่
ความจริงควรคือเขามีคำพูดสุดท้ายเกี่ยวกับสิ่งที่จะทำกับเงิน เพราะเงินอยู่ในกระเป๋าของ Xiao Ming
ดังนั้นคุณสามารถใช้ฟังก์ชั่นการโทรกลับ
ฟังก์ชั่นการโทรกลับเป็นชนิดข้อมูล
ใน JavaScript สถานะของฟังก์ชั่นนั้นเหมือนกับ String , int , boolean ฯลฯ ใน Java และถือได้ว่าเป็นชนิดข้อมูล
เนื่องจากเป็นชนิดข้อมูลแน่นอนว่าสามารถส่งผ่านเป็นพารามิเตอร์
ดังนั้นมันควรจะเป็นเช่นนี้:
person.spendMoney = ฟังก์ชั่น (dosomething) {dosomething (); -การใส่วงเล็บหมายถึงการดำเนินการฟังก์ชั่น
ฟังก์ชั่นที่ไม่มีวงเล็บเป็นสิ่งเดียวกับ String และ int
เป็นชนิดข้อมูล
เดียวกัน.
นี่คือสิ่งที่ Java พูดว่า:
string str = "helloWorld!";
ใน JavaScript ฟังก์ชั่นเหมือนกัน
var says = function () {alert ('helloWorld');} ในเวลานี้ say เป็นประเภทข้อมูล
เนื่องจากไม่มีวงเล็บเขาจะดำเนินการหลังจากวงเล็บเท่านั้น!
สิ่งที่เสี่ยวหมิงทำกับสิบหยวนเขามีคำพูดสุดท้าย
person.spendMoney (function () {});นี่คือการผ่านฟังก์ชั่นใน
วัตถุประสงค์ของการส่งฟังก์ชั่นไปยังวิธี spendMoney คือการปล่อยให้ฟังก์ชั่นถูกดำเนินการในนั้น
ดังนั้น:
person.spendMoney = ฟังก์ชั่น (dosomething) {dosomething (); -มีวงเล็บอยู่ข้างในซึ่งหมายความว่าจะต้องดำเนินการฟังก์ชั่น
จะทำอย่างไรตัดสินใจด้วยตัวเอง
person.spendMoney (function () {แจ้งเตือน ('ช่วยประหยัดเงิน!');});สรุป
หมายความว่าคุณสามารถส่งฟังก์ชั่นเป็นพารามิเตอร์ลงในวิธีการและคุณสามารถเรียกใช้ฟังก์ชั่นนี้ในวิธีการ นี่คือความมหัศจรรย์ของฟังก์ชั่นการโทรกลับที่ไม่ซ้ำกันกับ JS
ข้างต้นคือทั้งหมดที่เกี่ยวกับการใช้ฟังก์ชันการโทรกลับ JavaScript ฉันหวังว่ามันจะเป็นประโยชน์ต่อการศึกษาและการทำงานของทุกคน หากคุณมีคำถามใด ๆ โปรดฝากข้อความเพื่อพูดคุย