首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Web前端学习需要掌握的JavaScript技能

目前,Web前端已经成为越来越多跨入IT行业从业者的首选。归其原因,首先Web前端相对于其它编程语言入门门槛低,适合基础薄弱以及基础为零的同学学习;其次,各行各业对于Web前端的人才需求始终保持稳步增长;

接下来,千锋教重庆校区的老师会就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一样的虚拟机或者字节码解释器。这么做主要是为了减少这抽象语法树到字节码的转换时间,这一切都在网页加载时候完成,虽然可以提高优化的可能,但是这些分析可能带来巨大的时间浪费。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20200303A07QYV00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券