<div dir="ltr">Assigning to 'this' because it happens that 'this' is global is no better and perhaps worse than using undeclared variables for globals. Assignments to global have, well, non-local consequences: they should be explicit not context dependent.<div>
<br></div><div>Even if you don't agree, node has made "global" the de facto standard; lots of code is now written with the (function(global) {...}(typeof global !== 'undefined' ? global : this)); goop. ┬áModules avoid the smaller part of that boilerplate but we still don't solve it all without a way to say "global".</div>
</div><div class="gmail_extra"><br><br><div class="gmail_quote">On Thu, Jun 5, 2014 at 7:34 AM, Andreas Rossberg <span dir="ltr"><<a href="mailto:rossberg@google.com" target="_blank">rossberg@google.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="HOEnZb"><div class="h5">On 5 June 2014 16:08, John Barton <<a href="mailto:johnjbarton@google.com">johnjbarton@google.com</a>> wrote:<br>

> On Thu, Jun 5, 2014 at 2:06 AM, Andreas Rossberg <<a href="mailto:rossberg@google.com">rossberg@google.com</a>><br>
> wrote:<br>
>><br>
>> On 4 June 2014 23:46, John Lenz <<a href="mailto:concavelenz@gmail.com">concavelenz@gmail.com</a>> wrote:<br>
>> > I don't personally want to write sloppy mode code, but there are places<br>
>> > you<br>
>> > need it (using eval to introduce new symbols into global scope).<br>
>><br>
>> You don't necessarily need sloppy mode for that. In strict mode, you<br>
>> can still express it as assignment to the global object.<br>
><br>
> This excellent solution would be much more widely adopted if the global<br>
> object had a standard identifier, like say "global".<br>
<br>
</div></div>Hm, I'm not sure why that would be a problem. What's wrong with using<br>
'this' inside those evals?<br>
<span class="HOEnZb"><font color="#888888"><br>
/Andreas<br>
</font></span></blockquote></div><br></div>