私はlet
は、ブロックの上に掲揚されますが、初期化する前に、それへのアクセスは例えばTemporal Dead Zone
ES6で巻き上げをする目的は何ですか?
にあることに起因ReferenceError
を投げることを理解:
console.log(x); // Will throw Reference Error
let x = 'some value';
しかし、このようなスニペットはせずに実行されますエラー:
foo(); // alerts foo;
function foo(){ // foo will be hoisted
alert("foo");
}
私の質問
let
の目的はアクセス時にエラーを投げるときに上に上がりますか?また、var
はTDZに苦しんでいますか、私はそれがundefined
を投げる時を知っていますが、TDZのためですか?
["let"キーワードと "var"キーワードの重複の可能性があります(http://stackoverflow.com/questions/762011/let -keyword-vs-var-keyword) –
@ MarcosPrezGudemyの疑問は、巻上げに関連しています。アクセスにエラーが発生しても、差をつけさせてください。しかし、あなたが共有したリンクは、letとvarの違いについてもっと詳しく教えてくれます。 – brk
申し訳ありませんが、私は吊り上げが何であるか分かりませんでしたが、今はすべて明らかです。私は私の重複投票を削除します。 –