Declarações de função dentro de instruções if / else?
Como as declarações de função são tratadas?
<code>var abc = ''; if(1 === 0){ function a(){ abc = 7; } }else if('a' === 'a'){ function a(){ abc = 19; } }else if('foo' === 'bar'){ function a(){ abc = 'foo'; } } a(); document.write(abc); //writes "foo" even though 'foo' !== 'bar' </code>
Este exemplo produz saídas diferentes no Chrome e no Firefox. Saídas cromadasfoo
enquanto saídas FF19
.