Notez que les deux se comportent différemment - les fonctions définies par l'instruction function
sont définies avant l'exécution du code.
typeof f; //returns 'undefined'
var f = function() {};
mais
typeof f; //returns 'function'
function f() {}
(Avez-vous aussi remarqué où je l'ai fait et où je n'ai pas utilisé virgule?)
En outre, les instructions de fonction (la deuxième option) sont interdits dans les blocs . Il ne se définit pas comment les éléments suivants devraient fonctionner:
if (false) {
function f(){}
}
donc il est possible que la fonction f
sera, bien que illogiquement, a déclaré dans certains navigateurs. Cependant, il est permis de faire ce qui suit:
var f;
if (some expr) {
f = function() {};
}
La prochaine fois meilleure recherche avant de poser une question, var functionName = function() {} vs function functionName() {}
tout le monde aime une ou l'autre style de codage. Je pense que le second est toujours une meilleure option, comme son plus facile et lisible – Rohan
duplication possible de [Javascript: var functionName = fonction() {} vs functionName() {}] (http://stackoverflow.com/questions/336859/javascript-var-functionname-function-vs-function-functionname) – duri