時間的デッドゾーンの外に変数を聞かせてください。ただし、null
は構造化することができないため、割り当てによってTypeErrorがスローされます。このコードは参照してください
foo = 123; // ReferenceError: can't access lexical declaration `foo' before initialization
そしてlet
変数が再宣言することはできません:
問題はその後foo
変数が宣言されていますが、初期化されていないので、第二スクリプトで、私はfoo
を参照しようとすると、それがスローされていることである
let foo = 123; // SyntaxError: redeclaration of let foo
TDZから取り出して値を割り当てて読み取る方法はありますか?
ところで、私は 'foo'を使いたいのですが、' window.foo'のような回避策ではありません。 – Oriol
私は初期化の妥当性を保証するのを困難にする最初のスクリプトについて面白いことがあると思います。 – Pointy
@Oriol: 'window.foo' [とにかく動作しない](http://stackoverflow.com/q/28776079/1048572):-) – Bergi