JavaScriptにおけるパラメータを介したコンテキスト

別の解決策も存在します。関数 child が パラメータを受け取るようにしてみましょう:

javascriptfunction child(param) {
  // ここにコードが入ります
}

そして、この関数を呼び出す際に、 this を渡します:

javascriptfunction parent() {
  child(this); // thisをパラメータとして渡す
  
  function child(param) {
    // 変数 param には渡された this の内容が入っています
  }
}

child の呼び出しは親関数内で行われるため、 渡される 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を出力
  }
}
Задание 1

前のタスクのコードを取り出し、 学んだ2番目の方法を使ってコードの問題を修正してください。