JS編譯原理 --《你不知道的JS》


1.編譯原理

    1.分詞/詞法分析

      些代碼塊被稱為詞元(token)。例如,var a = 2;段程序通常會被分解成下面元:vara=2 ;

    2.解析/語法分析

      程是將元流(數轉換成一個由元素逐嵌套所成的代表了程序被稱抽象Abstract Syntax TreeAST    

<script>
         variabledeclaration

    identifier = a      assignmentExpession
         
                                        numricliteral  =2
</script>

    3.代碼生成

      AST轉換為行代程稱被稱生成 。

3.編譯原理的重要角色

  引擎
    從到尾負責整個JavaScript程序的編譯程。
  編譯
    引擎的好朋友之一,負責語法分析及代生成等活累活
  作用域
    引擎的一位好朋友,負責收集並維護由所有聲明的標識符(量)成的一系列查詢,並施一套非常格的規則,確定當前行的代碼對這標識符的訪問權

4.RHS和LHS查詢

  如果找的目的是對變賦值,那么就會使用LHS查詢;如果目的是量的,就會使用RHS查詢

5.錯誤類型

  ReferenceError同作用域判相關,而TypeError代表作用域判成功了,但是對結果的操作是非法或不合理的。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM