之前有介紹關于瀏覽器的一些基礎知識,帶大家認識了瀏覽器的種類以及大致的工作原理,今天,為廣大初進入網站建設行業的朋友聊下瀏覽器是如何解析翻譯的.解析翻譯呈現引擎中非常重要的一個環節,因此我們要更深入地講解。
解析樹或者語法樹
解析文檔是指將文檔轉化成為有意義的結構,也就是可讓代碼理解和使用的結構。解析得到的結果通常就代表了文檔的節點樹,專業上稱作解析樹或者語法樹.解析是以文檔所遵循的語法規則為基礎的.所有可以解析的格式都必須對應相應的語法(通常是詞匯與語法規則構成的.
詞法分析與語法分析
詞法分析是把輸入的內容分割成大量標記的過程。標記是語言中的詞匯,即構成內容的單位。,它相當于我們人類語言的單詞.語法分析是應用語言的語法規則的過程.解析器往往會把解析工作交給下面的兩個組件來進行處理:詞法分析器和解析器,語法分析器有時候也被叫做為標記生成器,主要把輸入內容分解成一個個有效標記;而解析器主要負責根據語言的語法規則分析文檔的結構,從而構建解析樹.詞法分析器知道如何將無關的字符(比如空格和換行符)分離出來.網站制作中使用的前端的一些語言往往就是按照瀏覽器語法規則的語言,通俗的說就是瀏覽器能夠看得懂的語言.
解析與翻譯的過程
解析的過程往往是一個迭代的過程。解析器會向詞法分析器請求一個新標記,并會使其與某條語法規則進行匹配.如果發現了能夠匹配,解析器會把一個對應于該標記的節點添加到解析樹中,然后繼續請求下一個標記。如果不能夠匹配,解析器就會把標記存起來,會繼續請求標記,一直到能找到可與所有內部存儲的標記匹配的規則.萬一找不到任何能夠匹配的規則,那么解析器就會引發一個異常.這意味著文檔無效,包含語法錯誤.
解析樹還不最后的,解析往往是在翻譯的時候使用的,而翻譯是把將輸入文檔轉換成另一種格式。編譯就是這樣一個例子,編譯器可把源代碼編譯成機器代碼,具體過程是首先將源代碼解析成解析樹,然后將解析樹翻譯成機器代碼文檔.
以上大家有時間的話,可以了解下,對于我們很多上海網站制作技術人員來說,不要求很精通,懂得其大致的工作原理就足夠了.
本文由上海藝覺網絡科技有限公司(http://www.gxxmybkw.com)原創編輯轉載請注明。