ホームページ >ウェブフロントエンド >jsチュートリアル >JavaScript_javascript スキルにおける関数宣言が変数宣言より優先される分析例

JavaScript_javascript スキルにおける関数宣言が変数宣言より優先される分析例

WBOY
WBOYオリジナル
2016-05-16 17:55:321283ブラウズ
コードをコピーします コードは次のとおりです:

// 識別子 a function a() { // 関数を宣言します。識別子も
}
alert(typeof a);

は、優先度である「関数」を表示します。 function var よりも高いレベル。
これが、コードが順番に実行される、つまり、後で実行される関数によって a が上書きされる理由であると考える人もいます。わかりました、交換してください。

コードをコピー コードは次のとおりです。
function a() {
}
var a;
alert(typeof a);


結果には、「未定義」ではなく「関数」が表示されます。つまり、関数宣言は変数宣言よりも優先されます。
コードを少し変更して、宣言時に値を割り当てます。

コードをコピー コードは次のとおりです。
function a() {
}
var a = 1; // ここで注意してください
alert(typeof a);


このとき、「関数」は表示されません。

コードをコピー と同等 コードは次のとおりです。
function a() {
}
var a;
a = 1; // ここで、
alert(typeof a);

は、「var a = 1」が 2 つのステップに分割されることを意味します。 a は再割り当てされており、当然、それが最後の値になります。
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。