var func2 = function func1() {
console.log(1010)
// console.log('func1', func1)
}
function func3 () {
console.log(1010)
}
func3() // 1010
func2() // 1010
func1() // func1 is not defined
func1 n'est pas accessible, veuillez me donner une explication
La fonction que vous créez est créée via une expression de fonction, et non via une instruction de déclaration de fonction. Le nom de fonction ne peut être utilisé que dans l'expression de fonctionFaites attention aux instructions de déclaration de fonction et aux Expressions de fonction. la façon de définir les fonctions est différente.
Reportez-vous à la section Définition des fonctions du Javascript Definitive Guide 8.1 :