JSの事前解析とは
現在のスコープでは、jsが実行される前に、varとfunctionキーワードを含むコードが事前に宣言され、
メモリ上に配置され、上から下へjsコードが実行されます。
JSの事前解析は行ごとに実行されます
jsの事前解析とは何ですか
1> var
2> 関数
3> 関数によって渡される変数
1 .via var キーワードで定義された変数が事前解析される場合、値が割り当てられているかどうかに関係なく、変数は宣言として宣言され、未定義が割り当てられます。
パラメータを渡すときは常に値を直接割り当てます
alert(a);
var a = 1;
alert(b);
var b = function(){
}
alert(c);
var c;
2。関数が事前解析されると、define が宣言されて定義されますが、データを格納するスペースにはコードが文字列として格納されるため、意味がありません
alert(a);//文字列関数の
function a(){
alert("pre-parsed function1")
}
3 事前解析ですぐに実行したい関数を () 括弧内に置きます
。(function fn(){
alert("事前解析された関数1")
}(2)); クロージャ
(function(){
alert("事前解析された関数2")
}());
js はどのような状況で事前解析を実行しますか
1.