Toplevel 'let' binding can be left permanently uninitialized after an error

Joseph pacerier at gmail.com
Tue Nov 28 19:31:25 UTC 2017


Re "x is irreparably hosed in your REPL"; you can still use it in subscope,
eg <{let x=1;console.log(1)}>.

On 29 November 2017 at 01:30, T.J. Crowder <tj.crowder at farsightsoftware.com>
wrote:

> On Tue, Nov 28, 2017 at 5:05 PM, Joseph <pacerier at gmail.com> wrote:
> > You can still do `{x}`.
>
> Can you expand on that? It doesn't seem to me you can. I mean, if even `x
> = 42;` won't work (https://jsfiddle.net/tw3ohac6/), I fail to see how
> anything else using `x` would work, including `{x}` (https://jsfiddle.net/
> tw3ohac6/1/, https://jsfiddle.net/tw3ohac6/2/). `x` is permanently in the
> TDZ as far as I can tell.
>
> -- T.J. Crowder
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.mozilla.org/pipermail/es-discuss/attachments/20171129/7e0affa1/attachment-0001.html>


More information about the es-discuss mailing list