最新のクロムコンソールで以下のコードを実行します。Javascriptクラス宣言スコープの混乱
私はTest
クラスがroot
のスコープで宣言されると思ったので、文字列を介してコンストラクタにアクセスすることができましたが、これは当てはまりません。誰かが説明してください。'Test'
で新しいインスタンスを作成するにはどうすればよいですか?
(() => {
let root = this
class Test {}
console.log(root['Test'])
})()
クラス宣言** **掲揚されません。また、矢印関数 – Dummy
@Dummyによって作成されたレキシカルスコープについても読まなければなりません。好奇心の中から、どのスコープが追加されますか?スコープの権利が必要ですか? –
'Test'は矢印関数を使用しているため、囲み矢印関数にスコープされますが、これは字句スコープと呼ばれますが、矢印関数' let root = this 'を使用したため、明らかにメンバーとしての「テスト」 – Dummy