Como verificar o tipo de função em JavaScript

Nos problemas abaixo, você precisará determinar se a função é definida como Function Declaration ou Function Expression.

Em casos simples, isso não é difícil de fazer visualmente. Mas como verificar se você fez isso corretamente? Use a diferença entre Function Declaration e Function Expression: as primeiras podem ser chamadas acima de sua definição, e as segundas - não.

Suponha que temos uma função como esta:

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

Vamos chamar esta função antes de sua definição:

javascripttest(); // exibirá um erro no console, portanto é Function Expression

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

Aqui está outro exemplo:

javascriptfunc(); // exibirá '!', portanto é Function Declaration

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

Vamos colocar um sinal de mais antes da nossa função:

javascriptfunc(); // exibirá um erro no console, portanto é Function Expression

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

Como a função acima é uma Function Expression e não está atribuída a nenhuma variável, ela não pode ser chamada de forma alguma, pois pelo nome func ela estará inacessível.

Задание 1

Determine se a função apresentada é Function Declaration ou Function Expression:

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

Determine se a função apresentada é Function Declaration ou Function Expression:

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

Determine se a função apresentada é Function Declaration ou Function Expression:

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

Determine se a função apresentada é Function Declaration ou Function Expression:

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