Ah, thanks for explaining! What about the Temporal Dead Zone of let, or const binding semantics, for those of us who are obsessive enough to desire that kind of thing everywhere?<div><div><br>On Thursday, May 14, 2015, Bergi <<a href="mailto:a.d.bergi@web.de">a.d.bergi@web.de</a>> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Alexander Jones schrieb:<br>
> On Thursday, May 14, 2015, Domenic Denicola <<a>d@domenic.me</a>> wrote:<br>
><br>
>>   They can, in fact, be scoped in a for loop.<br>
><br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
That's not what I see, in strict mode at least, which I assume most people<br>
consider de facto by now!<br>
<br>
>From V8:<br>
<br>
     SyntaxError: In strict mode code, functions can only be declared at top<br>
level or immediately within another function.<br>
</blockquote>
<br>
That's ES5. In ES6, function declarations are allowed in blocks - with the new block scope semantics. This was only possible as ES5 strict mode held that spot open so now it doesn't break anything :-)<br>
Yes, it will need a while until people get accustomed to that.<br>
<br>
 Bergi<br>
_______________________________________________<br>
es-discuss mailing list<br>
<a>es-discuss@mozilla.org</a><br>
<a href="https://mail.mozilla.org/listinfo/es-discuss" target="_blank">https://mail.mozilla.org/listinfo/es-discuss</a><br>
</blockquote></div></div>