JavaScript的发明过程很仓促,并不像C和Python那样经历了不断的测试和调整,而是由一个名为Brendan Eich的程序员用10天的时间写出来的,其中存在一些90年代的商业竞争原因。这导致早期的JavaScript其实存在比较多的bug,但由于当时浏览器实在是太火了,而其却不能与用户实现交互,因此,JavaScript最初作为一门脚本语言被开发出来。
如此仓促发明的语言一定不是完完全全的创新。事实上,JavaScript的身上具有很多语言的特征(这跟其发明者Brendan的学科背景有关,他在发明JavaScript之前本来就会很多种编程语言)。
- 基本语法:借鉴C语言和Java语言
- 数据结构:借鉴Java语言,包括将值分为原始值和对象两大类
- 函数用法:借鉴Schema语言和AWK语言,引入闭包
- 原型继承模型:借鉴Self语言
- 正则表达式:借鉴Perl语言
- 字符串和数组处理:借鉴Python语言
- JavaScript的基础语法和对象体系,是模仿Java而设计的。
- JavaScript语言的函数是一种独立的数据类型以及基于原型对象的继承链,是与java语法最大的两点区别。
- JavaScript不需要编译,由解释器直接执行。
事实上,二者命名如此接近确实是有当时的商业原因——Brendan当时所属的网景公司跟java的母公司Sun是商业合作关系,故特地使用了相似命名,不过就编程语言来说二者是完完全全不同的两种编程语言。
3.转折JavaScript的可以说是一门低开高走的语言,在发展历程中有以下几次巨大的转折:
- 智能手机的崛起。有人说这跟JavaScript有什么关系呢?因为智能手机的崛起宣布了IE浏览器的衰落,而IE此前对JavaScript极其不友好。可以说,这掀起了前端市场的高潮。而JavaScript作为前端的一大核心,自然也随之飞速发展。
- 杀手级应用Gmail。2004年之前,人们对网页的认知仅仅停留在“这玩意儿是用来浏览新闻、图片的”。而google在2004年发布的Gmail在线网页刷新了人们的认知——登录Gmail网页,人们居然可以在网页上就收发邮件,这在当时是不可思议的。而google此项开发主要就是利用JavaScript完成的。
- V8引擎的诞生。随着Web相关技术的发展,JavaScript所要承担的工作也越来越多,早就超越了“表单验证”的范畴,这就更需要快速的解析和执行JavaScript脚本。V8引擎就是为解决这一问题而生,在node中也是采用该引擎来解析JavaScript。
V8引擎是由JavaScript引擎实现,最初由一些语言方面专家设计,后被google收购,随后google对其进行了开源。V8使用C++开发,在运行JavaScript之前,相比其它的JavaScript的引擎转换成字节码或解释执行,V8将其编译成原生机器码(IA-32, x86-64, ARM, or MIPS CPUs),并且使用了如内联缓存(inline caching)等方法来提高性能。有了这些功能,JavaScript程序在V8引擎下的运行速度媲美二进制程序。V8支持众多 *** 作系统,如windows、linux、android等,也支持其他硬件架构,如IA32,X64,ARM等,具有很好的可移植和跨平台特性。
在JavaScript发展过程中,爆发出了一系列技术,如gulp、grunt、yeoman、requirejs、webpack、Angular、React、Vue等。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)