JavaScript之背后的故事

作为一名程序员,想必大家都应该知道GitHub这个全球最大的同性交友网站 ,那你知道那些G友们一天天谈论最多的东西是什么?没错就是JavaScript语言,今天我们就来浅谈一下带点基情的语言JavaScript~~~


JavaScript之背后的故事_第1张图片

什么是JavaScript?

JavaScript,一种高级编程语言,通过解释执行,是一门动态类型,面向对象(基于原型)的直译语言[4]
。它已经由ECMA(欧洲电脑制造商协会)透过ECMAScript实现语言的标准化[4]
。它被世界上的绝大多数网站所使用,也被世界主流浏览器(Chrome、IE、FireFox、Safari、Opera)支持。JavaScript是一门基于原型、函数先行的语言[5]
,是一门多范式的语言,它支持面向对象程式设计,命令式程式设计,以及函数式程式设计。它提供语法来操控文本、阵列、日期以及正则表达式等,不支援I/O,比如网路、储存和图形等,但这些都可以由它的宿主环境提供支援。
虽然JavaScript与Java这门语言不管是在名字上,或是在语法上都有很多相似性,但这两门编程语言从设计之初就有很大的不同,JavaScript的语言设计主要受到了Self(一种基于原型的编程语言)和Scheme(一门函数式编程语言)的影响[5]
。在语法结构上它又与C语言有很多相似(例如if条件语句、while循环、switch语句、do-while循环等)[6]

在客户端,JavaScript在传统意义上被实现为一种解释语言,但在最近,它已经可以被即时编译(JIT)执行。随着最新的HTML5和CSS3语言标准的推行它还可用于游戏、桌面和行动应用程序的开发和在服务器端网路环境运行,如Node.js。

JavaScript的背后

  • 1995年,当时在网景公司就职的布兰登·艾克正为Netscape Navigator 2.0浏览器开发的一门名为LiveScript的脚本语言,后来网景公司与昇阳电脑公司组成的开发联盟为了让这门语言搭上java这个编程语言“热词”,将其临时改名为“JavaScript”,日后这成为大众对这门语言有诸多误解的原因之一。怪不得这语言那么基情~

  • 1996年8月,微软模仿JavaScript开发了一种相近的语言,取名为JScript(JavaScript是Netscape的注册商标,微软不能用),首先内置于IE 3.0。Netscape公司面临丧失浏览器脚本语言的主导权的局面。

  • 1996年11月,Netscape公司决定将JavaScript提交给国际标准化组织ECMA(European Computer Manufacturers Association),希望JavaScript能够成为国际标准,以此抵抗微软。

  • 1997年7月,ECMA组织发布262号标准文件(ECMA-262)的第一版,规定了浏览器脚本语言的标准,并将这种语言称为ECMAScript。

  • 1998年6月,ECMAScript 2.0版发布。

  • 1999年12月,ECMAScript 3.0版发布,成为JavaScript的通行标准,得到了广泛支持。

  • 2007年10月,ECMAScript 4.0版草案发布,对3.0版做了大幅升级,预计次年8月发布正式版本。草案发布后,由于4.0版的目标过于激进,各方对于是否通过这个标准,发生了严重分歧。以Yahoo、Microsoft、Google为首的大公司,反对JavaScript的大幅升级,主张小幅改动;以JavaScript创造者Brendan Eich为首的Mozilla公司,则坚持当前的草案。

  • 2008年7月,由于对于下一个版本应该包括哪些功能,各方分歧太大,争论过于激进,ECMA开会决定,中止ECMAScript 4.0的开发(即废除了这个版本),将其中涉及现有功能改善的一小部分,发布为ECMAScript 3.1,而将其他激进的设想扩大范围,放入以后的版本,由于会议的气氛,该版本的项目代号起名为Harmony(和谐)。会后不久,ECMAScript 3.1就改名为ECMAScript 5。

  • 2009年12月,ECMAScript 5.0版正式发布。Harmony项目则一分为二,一些较为可行的设想定名为JavaScript.next继续开发,后来演变成ECMAScript 6;一些不是很成熟的设想,则被视为JavaScript.next.next,在更远的将来再考虑推出。TC39的总体考虑是,ECMAScript 5与ECMAScript 3基本保持兼容,较大的语法修正和新功能加入,将由JavaScript.next完成。当时,JavaScript.next指的是ECMAScript 6。第六版发布以后,将指ECMAScript 7。TC39预计,ECMAScript 5会在2013年的年中成为JavaScript开发的主流标准,并在此后五年中一直保持这个位置。

  • 2011年6月,ECMAscript 5.1版发布,并且成为ISO国际标准(ISO/IEC 16262:2011)。到了2012年底,所有主要浏览器都支持ECMAScript 5.1版的全部功能。

  • 2013年3月,ECMAScript 6草案冻结,不再添加新功能。新的功能设想将被放到ECMAScript 7。

  • 2013年12月,ECMAScript 6草案发布。然后是12个月的讨论期,听取各方反馈。

  • 2015年6月,ECMAScript 6正式发布。并且更名为“ECMAScript 2015”。

  • 2016年6月,《ECMAScript 2016标准》发布, 又称ECMAScript 7

  • 2017年,ECMAScript 8正式发布,又称ECMAScript 2017

总结

从JavaScript语言自身的特性,试用场景,历史看出来这门语言不简单,他在一点一点的变好,他慢慢的变成了世界上最好的语言~~~
引入程序员Jeff Atwood一段话。

“所有可以用 JavaScript 编写的程序,最终都会用JavaScriptlai来编写。”(Any application that can be written in JavaScript will eventually be written in JavaScript.)

你可能感兴趣的:(JavaScript之背后的故事)