if(true) {
let m = "yo";
console.log(m);
}
console.log(m)
Sortie:Ordre d'exécution JavaScript: pourquoi ce conditionnel s'exécute-t-il après le code qui le suit?
ReferenceError: m is not defined
yo
Ainsi, le code sur la ligne 4 est en cours d'exécution après le code sur la ligne 8.
Mon utilisation de let
ont rien à voir avec cela?
EDIT: Après avoir lu les commentaires, j'ai réalisé que cela pouvait être dû à mon temps d'exécution. Voici comment je le vois dans Firefox nuit:
EDIT 2: Si tel est juste mon temps d'exécution, alors y at-il des implications pour le code de production en raison de quelque chose comme ça? Comportement incohérent entre les navigateurs? Comment puis-je me prémunir contre cela?
Vous l'utilisez dans Chrome? – Ben
[Je ne peux pas reproduire cela.] (Http://jsfiddle.net/nxzt5npp/) - et je regarde cela dans l'édition de développement FF. – Andy
J'ai ce comportement dans Firefox Nightly, console. –