iis服务器助手广告广告
返回顶部
首页 > 资讯 > 前端开发 > JavaScript >浏览器是如何解析代码的
  • 587
分享到

浏览器是如何解析代码的

2024-04-02 19:04:59 587人浏览 薄情痞子
摘要

这篇文章主要介绍浏览器是如何解析代码的,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!浏览器是如何解析代码的?解析HTMLhtml是逐行解析的,浏览器的渲染引擎会将HTML文档解析并转

这篇文章主要介绍浏览器是如何解析代码的,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

浏览器是如何解析代码的?

解析HTML

html是逐行解析的,浏览器的渲染引擎会将HTML文档解析并转换成DOM节点。

  • 将HTML解析成许多Tokens

  • 将Tokens解析成object

  • 将object组合成一个DOM树

解析CSS

浏览器会从右往左解析CSS选择器

我们知道DOM树与CSSOM树合并成render树,实际上是将CSSOM附着到DOM树上,因此需要根据选择器提供的信息对DOM树进行遍历。

我们看一个例子:

<style>
.nav .title span {color:blue}
</style>

<div class='nav'>
  <div class='title'>
    <span>南玖</span>
  </div>
  <div class="sub_title">前端</header>
</div>

从右至左的匹配:

  • 先找到所有的最右节点 span,对于每一个 span,向上寻找节点 div.title

  • 由 h4再向上寻找 div.nav 的节点

  • 最后找到根元素 html 则结束这个分支的遍历。

解析JS

在浏览器中有一个js解析器的工具,专门用来解析我们的js代码。

当浏览器遇到js代码时,立马召唤“js解析器”出来工作。

解析器会找到js当中的所有变量、函数、参数等等,并且把变量赋值为未定义(undefined)。

把函数取出来成为一个函数块,然后存放到仓库当中。这件事情做完了之后才开始逐行解析代码(由上向下,由左向右),然后再去和仓库进行匹配。

以上是“浏览器是如何解析代码的”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注编程网JavaScript频道!

--结束END--

本文标题: 浏览器是如何解析代码的

本文链接: https://www.lsjlt.com/news/95416.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 浏览器是如何解析代码的
    这篇文章主要介绍浏览器是如何解析代码的,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!浏览器是如何解析代码的?解析HTMLHTML是逐行解析的,浏览器的渲染引擎会将HTML文档解析并转...
    99+
    2022-10-19
  • 浏览器如何解析javascript
    随着互联网技术的不断发展,JavaScript语言已经成为了前端开发的必备技能。JavaScript是一种脚本语言,它可以在浏览器中执行,以实现网页的交互效果,如表单验证、动态加载内容、异步请求等等。那么浏览器是如何解析JavaScript...
    99+
    2023-05-14
  • JS如何在浏览器中解析Base64编码图像
    这篇文章主要介绍JS如何在浏览器中解析Base64编码图像,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!浏览器对Base64的支持 图像是最经常被使用的一种二进制文件。而现代的浏览器...
    99+
    2022-10-19
  • css浏览器乱码如何解决
    本篇内容介绍了“css浏览器乱码如何解决”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!css浏览器乱码的解决办法:1、将CSS指定编码类型如...
    99+
    2023-07-05
  • webpack自动刷新浏览器源码解析
    目录配置webpack热更新模式源码解析开启本地服务监听编译完成监听文件修改向浏览器中插入客户端代码在我们日常的前端开发过程中,在编辑器里只需要保存代码,浏览器就会自动刷新当前页面。...
    99+
    2023-02-07
    webpack自动刷新浏览器原理 webpack自动刷新浏览器优缺点 webpack自动刷新浏览器实现方法
  • 针对浏览器CSS代码设置的示例分析
    这篇文章给大家分享的是有关针对浏览器CSS代码设置的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。 除了平庸安卓平台google涉猎器,还要思索苹果,火狐涉猎器、IE等...
    99+
    2022-10-19
  • win10的edge浏览器乱码如何解决
    本篇内容主要讲解“win10的edge浏览器乱码如何解决”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“win10的edge浏览器乱码如何解决”吧!Win + R输入【gpedit.msc】回车进...
    99+
    2023-07-01
  • safari的webkit核心浏览器css代码如何写
    这篇文章主要介绍“safari的webkit核心浏览器css代码如何写”,在日常操作中,相信很多人在safari的webkit核心浏览器css代码如何写问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操...
    99+
    2022-10-19
  • windows edge浏览器乱码如何解决
    本文小编为大家详细介绍“windows edge浏览器乱码如何解决”,内容详细,步骤清晰,细节处理妥当,希望这篇“windows edge浏览器乱码如何解决”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。edge浏...
    99+
    2023-07-01
  • 浏览器写php只显示代码的原因是什么及如何解决
    这篇文章主要介绍“浏览器写php只显示代码的原因是什么及如何解决”,在日常操作中,相信很多人在浏览器写php只显示代码的原因是什么及如何解决问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”浏览器写php只显示代...
    99+
    2023-07-05
  • Jquery判断IE6等浏览器的代码
    Jquery判断IE6的代码: 复制代码 代码如下: if ($.browser.msie && ($.browser.version == "6.0") &...
    99+
    2022-11-21
    IE6 浏览器
  • Win7如何如何设置QQ打开的浏览器是IE浏览器
      Win7下IE浏览器是自带的,如今也有很多的浏览器已经进入大家的电脑中,但是据我所知大多数用户还是习惯了使用IE浏览器。QQ广告已经进入我们的市场,很多用户都会经过QQ中的链接来打开一些网页但是往往经常打开的却不是大...
    99+
    2023-06-15
    Win7 浏览器 QQ链接 IE
  • 解决jupyter 在浏览器中 代码不执行的问题
    在机器学习的时候,当开始就遇到问题,pycharm启动jupyter notebook之后,浏览器前两行代码执行的好好的,后面就不执行了,上面的键全点了一遍(英语不行,见谅- -,死...
    99+
    2022-11-11
  • 浏览器如何设置密码
    这篇文章主要介绍浏览器如何设置密码,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!打开ie浏览器,点击右上角的“工具”选择“Internet选项”。在打开的”Internet选项“中将其切换至“内容”选项,点击”启动“...
    99+
    2023-06-28
  • php输出到浏览器乱码如何解决
    这篇文章主要讲解了“php输出到浏览器乱码如何解决”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“php输出到浏览器乱码如何解决”吧!php输出到浏览器乱码的解决办法:1、打开相应的php文件...
    99+
    2023-07-05
  • windows中ie浏览器打开变成别的浏览器如何解决
    这篇文章主要介绍“windows中ie浏览器打开变成别的浏览器如何解决”,在日常操作中,相信很多人在windows中ie浏览器打开变成别的浏览器如何解决问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操...
    99+
    2022-12-16
    windows ie
  • 如何用JavaScript检测当前浏览器是无头浏览器
    目录什么是无头浏览器(headless browser)?为什么叫“无头”浏览器?为什么要检测无头浏览器?检测无头浏览器User agent插件 Plugins语言WebGL浏览器特...
    99+
    2022-11-12
  • 如何在Nodejs或者浏览器直接运行esm代码
    今天就跟大家聊聊有关如何在Nodejs或者浏览器直接运行esm代码,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。 怎么在...
    99+
    2022-10-19
  • 如何使用JavaScript检测当前浏览器是无头浏览器
    这篇文章将为大家详细讲解有关如何使用JavaScript检测当前浏览器是无头浏览器,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。javascript是一种什么语言javascript是一种动态类型、弱类型...
    99+
    2023-06-14
  • 如何查看浏览器保存的密码
    这篇文章主要为大家展示了“如何查看浏览器保存的密码”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“如何查看浏览器保存的密码”这篇文章吧。方法/步骤:打开开始菜单,随后在搜索框中输入“凭据管理器”并...
    99+
    2023-06-27
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作