Cette page n'est pas encore disponible en français, sa traduction est en cours. Si vous avez des questions ou des retours sur notre projet de traduction actuel, n'hésitez pas à nous contacter.
Function declarations in JavaScript are generally not block scoped. This rule prevents function declarations inside nested blocks like if statements. Move your declarations to the root of your program, body, or class.
Non-Compliant Code Examples
if(test){functiondoSomething() {}}if(foo)vara;if(foo)/* some comments */vara;if(foo){functionf(){if(bar){vara;}}}if(foo)functionf(){if(bar)vara;}if(foo){varfn=function(){}}if(foo)functionf(){}functionbar() {if(foo)vara;}if(foo){vara;}classC{method() {if(test){varfoo;}}}classC{static{if(test){functionfoo() {}}}}classC{static{if(test){varfoo;}}}classC{static{if(test){if(anotherTest){varfoo;}}}}