网站首页 > 技术文章 正文
JavaScript是Web前端人员必须要掌握的知识点之一,也是一门高级语言。最初JavaScript只是在Web浏览器中运行,随着Node的出现,JavaScript也可以在服务端运行。接下来的郑州Web前端学习课就给大家讲解一下JavaScript引擎工作原理。
JavaScript引擎是什么?
JavaScript引擎是一种用于将我们的代码转换为机器可读语言的引擎。如果没有JavaScript引擎,你编写的代码对计算机来说简直是一堆“胡言乱语”。不仅仅是JavaScript,其他所有编程语言都需要一个类似的引擎,来将这些“胡言乱语”转换成对计算机有意义的语言。
JavaScript引擎的组成部分有哪些?
1、编译器。主要工作是将源代码编译成抽象语法树,然后在某些引擎中还包含将抽象语法树转换成字节码。
2、解释器。在某些引擎中,解释器主要是接受字节码,解释执行这个字节码,然后也依赖来及回收机制等。
3、JIT工具。一个能够JIT的工具,将字节码或者抽象语法树转换成本地代码,当然它也需要依赖牢记垃圾回收器和分析工具(profiler)。它们负责垃圾回收和收集引擎中的信息,帮助改善引擎的性能和功效。
JavaScript引擎是如何工作的?
JavaScript的工作形式取决于是什么引擎。目前比较常用的JavaScript引擎有两个:WebKit的JavaScriptCore和Google的V8引擎。这两个引擎处理代码的方式是不同的。
JavaScriptCore: 源代码=》抽象语法树=》字节码
1、词法分析,将源代码分解成一系列具有明确含义的符号或字符串(分词);
2、用词法分析器分析这些符号,将其构建成抽象语法树;
3、解析器生成字节码(编译器可以理解);
4、4个JIT(Just-In-Time)进程参与进来,分析和执行解析器所生成的字节码。
谷歌的V8引擎,用C++编写,也编译和执行JavaScript源代码、处理内存分配、垃圾收集剩余物。V8引擎并不将抽象语法树转变成字节码或者其它中间表示,没有像Java一样的虚拟机或者字节码解释器。这么做主要是为了减少这抽象语法树到字节码的转换时间,这一切都在网页加载时候完成,虽然可以提高优化的可能,但是这些分析可能带来巨大的时间浪费。
想了解更多Web前端学习资料,你可以关注“千锋郑州校区”微信公众号,如果你想参加专业的前端培训班,可以来千锋郑州Web前端培训班,专业大牛讲师全程面授,以就业为导向制定课程大纲,还有一体化就业保障体系,让你快速入行Web前端、掌握企业所需的高端技能!
猜你喜欢
- 2024-11-25 Web前端和HTML5什么区别 怎么更好入门前端
- 2024-11-25 小白学郑州UI培训课程 在实践中不断提升自我
- 2024-11-25 女生学Web前端有优势吗 怎样快速入行前端行业
- 2024-11-25 如何提升Web前端专业技能 怎么让自己更具潜力
- 2024-11-25 Web前端薪资待遇怎么样 如何学好Web前端开发
- 2024-11-25 Web前端发展好不好 零基础小白该怎么学前端
- 2024-11-25 学Web前端待遇怎么样 如何提升自己脱颖而出
- 2024-11-25 学Web前端要熟练哪些技能 怎样才能顺利求职
- 2024-11-25 Web前端行业前景好不好 零基础该怎么学前端
- 2024-11-25 怎么转战Web前端行列 零基础能学Web前端吗
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- 前端设计模式 (75)
- 前端性能优化 (51)
- 前端模板 (66)
- 前端跨域 (52)
- 前端缓存 (63)
- 前端aes加密 (58)
- 前端脚手架 (56)
- 前端md5加密 (54)
- 前端路由 (61)
- 前端数组 (73)
- 前端js面试题 (50)
- 前端定时器 (59)
- Oracle RAC (76)
- oracle恢复 (77)
- oracle 删除表 (52)
- oracle 用户名 (80)
- oracle 工具 (55)
- oracle 内存 (55)
- oracle 导出表 (62)
- oracle约束 (54)
- oracle 中文 (51)
- oracle链接 (54)
- oracle的函数 (58)
- oracle面试 (55)
- 前端调试 (52)
本文暂时没有评论,来添加一个吧(●'◡'●)