- 我们把偏向硬件的语言成为低级语言,它可以直接控制硬件的行为;而把偏向人类、人类更容易理解的语言是高级语言。其中JavaScript也是高级语言之一,它是由Brenddan Eich花了10天开发的一门语言,它融合了C语言的基本语法、Java的数据类型和内存管理、Scheme的函数式编程及self的原型继承,简直就是各种语言的大杂烩,它是运行时编译的语言,在node环境下运行很是快速。下面是对低级语言和高级语言特点的解释图。
- JavaScript需要专门的js引擎来编译执行,比如Google的V8、FireFox的SpiderMonkey、Webkit的JavaScriptCore、QuickJs及FaceBook在React Native中使用到的Hermes。虽然引擎种类众多,但是他们在编译过程中的流程大致是差不多的,流程如下:
注意:由于不同的处理器平台使用的机器代码会有差异,所以编译器会根据当前平台来编译出相应的机器代码,这些平台有IA32、X64、ARM、MIPS。这些机器码其实就是汇编代码。