JavaScriptが簡潔にプリコンパイル

JavaScript有两个特征,首先他是一门解释性语言,压根没有编译一说,只有预编译。其次他的执行是单线程的,只能按部就班的一句句执行。
JavaScript的执行过程分为三步,首先是语法/语义分析,找出问题,例如缺个大括号什么的,接下来是预编译,最后是解释执行。在讲预编译之前,先说四点知识。
  1. 全体的な関数宣言を強化
  2. 変数宣言のアップグレード(ちょうどアップグレード文を注意してください)
  3. 宣言されていない割り当て、グローバル変数によって所有:グローバルヒントグローバル変数を意味します。
  4. すべてのグローバル変数は、グローバルオブジェクトを行く宣言し、ウィンドウがグローバルドメインであります

プリコンパイルされた関数が実行の瞬間前に発生し、プリコンパイルされtetralogyがあります。

  1. AOは、オブジェクト(コンテキストのアクティベーションオブジェクトの実行)を作成します
  2. フォーム見つけるAO属性名として変数宣言、パラメータ名と変数に参加し、値が定義されていません
  3. Unityに参加し、実際のパラメータ
  4. 関数内の関数宣言を検索し、関数本体に割り当てられた値
    関数全体の環境では、彼の世代は、ウィンドウオブジェクト、通常の状況下で、無段階の別の名前であるオブジェクトGOは、あることを除いて。
    それは真実をテストするための唯一の基準である:
    いくつかの栗:
    :2年Baiduの顔質問13(シンプル)を初めて目
    ここに画像を挿入説明
    AO {
    FOO:undefined->機能; - > 10-> 11。
    }
    ここに画像を挿入説明
    AO {
    FOO:undefined- >関数
    }
    テーブルに感じ、我々はほとんど困難なければならない:
    ここに画像を挿入説明
    AO {
    :undefined-> 1->機能- > 123
    B:undefined->関数
    D:関数
    }
    ここに画像を挿入説明
    AO {
    :undefined-> 1-> 3
    B:undefined->機能- > 2
    C:undefined-> 0
    D:関数
    }
    ここに画像を挿入説明
    AO {
    B:未定義; - > 234-> 345->関数
    A:不定; - > 1->機能- > 123
    }
    ここに画像を挿入説明
    AO { A:undefined->} 20は、
    GO {B:

    ここに画像を挿入説明
    {試験AO:undefined-> 1->機能- > 234}
    GO {テスト:undefined->機能- > 123}
    ここに画像を挿入説明
    AO {グローバル:undefined-> 200-> 300}
    GO {グローバル:未定義
    のFn:}関数
    ここに画像を挿入説明
    AO { B:未定義}
    GO {:> 10 undefined-;試験:機能; C:234}
    関数内のCが、彼は、割り当てに宣言されていない、暗黙の意味はグローバル変数であり、彼が属するグローバルオブジェクトそうA。
    ローは、問題の希望があることを指摘しました!
公開された37元の記事 ウォンの賞賛0 ビュー712

おすすめ

転載: blog.csdn.net/weixin_43704007/article/details/104781645