Kuinka tarkistaa funktion tyyppi JavaScriptissä

Alla olevissa tehtävissä sinun on määritettävä onko funktio määritelty Function Declarationna vai Function Expressionina.

Yksinkertaisissa tapauksissa tämä ei ole vaikeaa tehdä visuaalisesti. Mutta kuinka tarkistaa, että olet tehnyt sen oikein? Käytä eroa Function Declaration ja Function Expression -funktioiden välillä: ensimmäisiä voidaan kutsua niiden määrittelyn yläpuolella, kun taas jälkimmäisiä ei.

Oletetaan, että meillä on funktio seuraavassa muodossa:

javascriptlet test = function() {
  console.log('!');
}

Viitataan tähän funktioon ennen sen määrittelyä:

javascripttest(); // tulostaa virheen konsoliin, eli Function Expression

let test = function() {
  console.log('!');
}

Toinen esimerkki:

javascriptfunc(); // tulostaa '!', eli Function Declaration

function func() {
  console.log('!');
}

Lisätään funktion eteen plus-merkki:

javascriptfunc(); // tulostaa virheen konsoliin, eli Function Expression

+function func() {
  console.log('!');
}

Koska yllä oleva funktio on Function Expression eikä sitä ole sijoitettu mihinkään muuttujaan, sitä ei voida kutsua millään tavalla, sillä nimellä func se ei ole käytettävissä.

Задание 1

Määritä, onko esitetty funktio Function Declaration vai Function Expression:

javascriptlet test = function func() {
  console.log('!');
}
Задание 2

Määritä, onko esitetty funktio Function Declaration vai Function Expression:

javascriptconsole.log(
  function func() {
    console.log('!');
  }
);
Задание 3

Määritä, onko esitetty funktio Function Declaration vai Function Expression:

javascript+function func() {
  console.log('!');
}
Задание 4

Määritä, onko esitetty funktio Function Declaration vai Function Expression:

javascriptfunction func() {
  console.log('!');
}