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.
Determine se a função apresentada é Function Declaration ou Function Expression:
javascriptlet test = function func() {
console.log('!');
}
Determine se a função apresentada é Function Declaration ou Function Expression:
javascriptconsole.log(
function func() {
console.log('!');
}
);
Determine se a função apresentada é Function Declaration ou Function Expression:
javascript+function func() {
console.log('!');
}
Determine se a função apresentada é Function Declaration ou Function Expression:
javascriptfunction func() {
console.log('!');
}