ホストとは?
護衛とは何ですか?
反発とは、変数と関数のメモリ領域を宣言する前に、企業に予め割り当てられていることを意味します.簡単に言えば、JavaScriptでは、変数と関数の宣言は、コードが実行される前にscopeの最上位に移動すると考えられます.
変数と関数は最も上向きに移動するため、変数または関数を定義する前に使用するコードは使用できます.
例
function catName(name) {
console.log("제 고양이의 이름은 " + name + "입니다");
}
catName("호랑이");
/*
결과: "제 고양이의 이름은 호랑이입니다"
*/
一般コードを作成します.ただし、次のように作成した関数は使用に影響しません.catName("클로이");
function catName(name) {
console.log("제 고양이의 이름은 " + name + "입니다");
}
/*
결과: "제 고양이의 이름은 클로이입니다"
*/
シースは、初期化以外の宣言のみをロードします.したがって、初期化前にロードするとundefinedが出力されます.先に宣言しても初期化されていないためです.console.log(num); // 호이스팅한 var 선언으로 인해 undefined 출력
var num; // 선언
num = 6; // 초기화
宣言せずに初期化すると、反発がないため、参照エラーが発生します.console.log(num); // ReferenceError
num = 6; // 초기화
letとconstの反発
let
およびconst
もシースのターゲットであるが、varとは異なり、シースは変数をundefinedに初期化しない.したがって、初期化されていないletおよびconstにアクセスしようとすると、Reference Errorが発生します.関連項目:https://developer.mozilla.org/ko/docs/Glossary/Hoisting
Reference
この問題について(ホストとは?), 我々は、より多くの情報をここで見つけました https://velog.io/@tutuh/Hoistingテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol