เราบอกว่าโหมดการเรียกของฟังก์ชั่นเรียกว่าเป็นฟังก์ชันและมันคือการแยกความแตกต่างจากโหมดการโทรอีกสามโหมด
มีการโทรอีกสามครั้งไปยังฟังก์ชั่น: โหมดการเรียกใช้วิธีการโหมดการเรียกสร้างตัวสร้างและใช้โหมดการโทร/การโทร
โหมดการโทรวิธี:
var obj = {fun1: function () {// เมธอดเนื้อหานี้; // หมายถึงหน้าต่าง}} obj.fun1 () // วิธีการโทรConstructor Call:
ฟังก์ชั่นบุคคล (ชื่อ, อายุ, งาน) {this.name = name; this.age = อายุ; this.job = งาน; this.sayName = function () {Alert (this.name); };} var person1 = บุคคลใหม่ ("นิโคลัส", 29, "วิศวกรซอฟต์แวร์"); var person2 = บุคคลใหม่ ("greg", 27, "หมอ");ใช้/โหมดการโทร:
function cat () {} cat.prototype = {อาหาร: "ปลา", พูด: function () {alert ("ฉันรัก" + this.food); }}; var blackcat = แมวใหม่; Blackcat.say ();หากไม่มีคำสั่งการส่งคืนที่ชัดเจนที่นี่วัตถุใหม่จะถูกส่งคืนโดยปริยายและกลายเป็นค่าของตัวสร้างนี้ กล่าวอีกนัยหนึ่งมันสามารถเทียบเท่ากับ: var blackcat = cat ใหม่ ();
แต่ถ้าเรามีวัตถุ
var whitedog = {อาหาร: "กระดูก"};เราไม่ต้องการกำหนดวิธีการพูดใหม่จากนั้นเราสามารถใช้วิธีการพูดของแบล็คแคทโดยการโทรหรือสมัคร:
blackcat.say.call (Whitedog);
ดังนั้นจะเห็นได้ว่าการโทรและการใช้ดูเหมือนจะเปลี่ยนสิ่งนี้แบบไดนามิก เมื่อวัตถุไม่มีวิธีการที่แน่นอน แต่สิ่งอื่น ๆ คือเราสามารถใช้การโทรหรือนำไปใช้เพื่อใช้งานกับวิธีการวัตถุอื่น ๆ
สำหรับการใช้งานเพิ่มเติมโหนด DOM ที่เลือกผ่าน document.getElementsByTagname เป็นอาร์เรย์ที่คล้ายกับอาร์เรย์ (อาร์กิวเมนต์ ฯลฯ ) ไม่สามารถใช้ push, pop และวิธีอื่น ๆ ภายใต้อาร์เรย์ เราสามารถใช้:
var domnodes = array.prototype.slice.call (document.getElementsByTagname ("*"));
ด้วยวิธีนี้ Domnodes สามารถใช้วิธีการทั้งหมดภายใต้อาร์เรย์
ข้างต้นเป็นเนื้อหาทั้งหมดของบทความนี้ ฉันหวังว่ามันจะเป็นประโยชน์ต่อการเรียนรู้ของทุกคนและฉันหวังว่าทุกคนจะสนับสนุน wulin.com มากขึ้น