การส่งผ่าน context ผ่านพารามิเตอร์ใน JavaScript

มีอีกวิธีหนึ่งในการแก้ไขปัญหา มาเริ่มด้วยการทำให้ ฟังก์ชัน child รับ พารามิเตอร์:

javascriptfunction child(param) {
  // โค้ดจะอยู่ที่นี่
}

และเมื่อเรียกใช้ฟังก์ชันนี้ เราจะส่ง this เข้าไปในฟังก์ชัน เป็นพารามิเตอร์:

javascriptfunction parent() {
  child(this); // ส่ง this เป็นพารามิเตอร์
  
  function child(param) {
    // ตัวแปร param จะเก็บเนื้อหาของ this ที่ถูกส่งเข้ามา
  }
}

เนื่องจากเรียกใช้ child อยู่ภายใน ฟังก์ชันหลัก (parent) ดังนั้น this ที่ถูกส่งผ่าน จึงชี้ไปยังสิ่งที่ต้องการ จากนั้น this นี้จะเข้าสู่พารามิเตอร์ param และจะสามารถเข้าถึงได้ภายในฟังก์ชันในรูปแบบนี้

นี่คือโค้ดที่สมบูรณ์:

javascriptlet elem = document.querySelector('#elem');
elem.addEventListener('blur', parent);

function parent() {
  child(this); // ส่ง this เป็นพารามิเตอร์
  
  function child(param) {
    console.log(param.value); // แสดงค่า value ของ input
  }
}
Задание 1

นำโค้ดจากงานก่อนหน้านี้มาและแก้ไข ปัญหาของโค้ดโดยใช้วิธีที่สองที่ได้ศึกษาไป