Kontekst via variabel i JavaScript

Løsningen er som følger: i den ytre funksjonen skriver vi this til en hvilken som helst variabel og denne variabelen vil være tilgjengelig i den indre funksjonen, som med alle variabler (vanligvis kalles denne variabelen self). På denne måten overfører vi this fra den ytre funksjonen til den indre:

javascript"use strict";

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

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

Anta at vi har denne koden:

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 av koden ønsket at ved tap av fokus skulle kvadratet av tallet fra value i inputfeltet vises på skjermen. Men av en eller annen grunn, ved tap av fokus vises det en feil i konsollen. Rette opp feilen i forfatterens kode. Skriv en tekst der du gir en forklaring til forfatteren av koden om hvorfor feilen oppstod.