之前有介绍关于浏览器的一些基础知识,带大家认识了浏览器的种类以及大致的工作原理,今天,为广大初进入网站建设行业的朋友聊下浏览器是如何解析翻译的.解析翻译呈现引擎中非常重要的一个环节,因此我们要更深入地讲解。
解析树或者语法树
解析文档是指将文档转化成为有意义的结构,也就是可让代码理解和使用的结构。解析得到的结果通常就代表了文档的节点树,专业上称作解析树或者语法树.解析是以文档所遵循的语法规则为基础的.所有可以解析的格式都必须对应相应的语法(通常是词汇与语法规则构成的.
词法分析与语法分析
词法分析是把输入的内容分割成大量标记的过程。标记是语言中的词汇,即构成内容的单位。,它相当于我们人类语言的单词.语法分析是应用语言的语法规则的过程.解析器往往会把解析工作交给下面的两个组件来进行处理:词法分析器和解析器,语法分析器有时候也被叫做为标记生成器,主要把输入内容分解成一个个有效标记;而解析器主要负责根据语言的语法规则分析文档的结构,从而构建解析树.词法分析器知道如何将无关的字符(比如空格和换行符)分离出来.网站制作中使用的前端的一些语言往往就是按照浏览器语法规则的语言,通俗的说就是浏览器能够看得懂的语言.
解析与翻译的过程
解析的过程往往是一个迭代的过程。解析器会向词法分析器请求一个新标记,并会使其与某条语法规则进行匹配.如果发现了能够匹配,解析器会把一个对应于该标记的节点添加到解析树中,然后继续请求下一个标记。如果不能够匹配,解析器就会把标记存起来,会继续请求标记,一直到能找到可与所有内部存储的标记匹配的规则.万一找不到任何能够匹配的规则,那么解析器就会引发一个异常.这意味着文档无效,包含语法错误.
解析树还不最后的,解析往往是在翻译的时候使用的,而翻译是把将输入文档转换成另一种格式。编译就是这样一个例子,编译器可把源代码编译成机器代码,具体过程是首先将源代码解析成解析树,然后将解析树翻译成机器代码文档.
以上大家有时间的话,可以了解下,对于我们很多上海网站制作技术人员来说,不要求很精通,懂得其大致的工作原理就足够了.
本文由上海艺觉网络科技有限公司(http://www.zwzsh.net)原创编辑转载请注明。