Kontekst via variabel i JavaScript

Løsningen er som følger: i den ydre funktion skriver vi this til en hvilken som helst variabel, og denne variabel vil være tilgængelig i den indre funktion, som alle andre variable (normalt kaldes denne variabel self). På denne måde sender vi this fra den ydre funktion til den indre:

javascript"use strict";

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

function parent() {
  console.log(this.value); // vil udskrive 'text'
  
  let self = this; // gemmer this i en hvilken som helst variabel, for eksempel self
  
  function child() {
    console.log(self.value); // vil udskrive 'text'
  }
  child();
}
Задание 1

Antag at vi har følgende kode:

html<input id="elem" value="3">
javascript"use strict";

let elem = document.querySelector('#elem');
elem.addEventListener('blur', func);

function func() {
  alert( square() );
  
  function square() {
    return this.value * this.value;
  }
}

Forfatteren af koden ønskede, at når inputfeltet mistede fokus, ville kvadratet af tallet i value blive vist på skærmen. Men af en eller anden grund, når fokus mistes, opstår der en fejl i konsollen. Ret forfatterens fejl. Skriv en tekst, hvor du giver forfatteren af koden en forklaring på, hvorfor hans fejl opstod.