JavaScript的诞生及涉及缺陷

1995年,布兰登艾克在网景公司为浏览器开发了JS功能(设计时间为10天),是与Java搭配使用的辅助脚本语言并且语法上有些类似的,能够使得非专业的网页作者也能很快上手。JS最初的命名为:Mocha,于95年底改名为LiveScript,同年12月,Netscape Navigator 2.0 Beta 3中部署时被重命名JavaScript,当时网景公司与昇阳电脑公司组成的开发联盟为了让这门语言搭上Java这个编程语言“热词”,因此将其临时改名为JavaScript,日后这成为大众对这门语言有诸多误解的原因之一。
1996年11月,网景公司向ECMA提交了语言标准,由于版权问题,JS的语言标准叫做ECMAScript。俗称ES。他打击了1996年8月微软发布的IE3中的JScript。
一般来说,完整的JavaScript包括以下几个部分:
ECMAScript,描述了该语言的语法和基本对象
ECMAScript于1997年6月诞生了第一版。
1999年12月诞生了第三版(IE6最流行的版本)
第四版流产
2009年2月发布了第五版
2015年6月发布了第六版
此后的每一年都发布一个新版本,并且以年份命名版本号
文档对象模型(DOM),描述处理网页内容的方法和接口
浏览器对象模型(BOM),描述与浏览器进行交互的方法和接口
JavaScript的基本特点如下:
是一种解释性脚本语言(代码不进行预编译)。
主要用来向HTML页面添加交互行为。
可以直接嵌入HTML页面,但写成单独的js文件有利于结构和行为的分离。
JavaScript常用来完成以下任务:
嵌入动态文本于HTML页面
对浏览器事件作出响应
读写HTML元素
在数据被提交到服务器之前验证数据
检测访客的浏览器信息
控制cookies,包括创建和修改等。
JS的设计缺陷
缺陷产生的原因:

  1. 设计阶段过于仓促
JavaScript的设计只用了十天。
【JavaScript的诞生及涉及缺陷】另一方面,这种语言的设计初衷,是为了解决一些简单的网页互动(比如,检查"用户名"是否填写),并没有考虑复杂应用的需要。
  1. 没有先例
Javascript同时结合了函数式编程和面向对象编程的特点,这很可能是历史上的第一例。而且直到今天为止,Javascript仍然是世界上唯一使用Prototype继承模型的主要语言。这使得它没有设计先例可以参考。
  1. 过早的标准化
Javascript的发展非常快,根本没有时间调整设计。
1995年5月,设计方案定稿;10月,解释器开发成功;12月,向市场推出,立刻被广泛接受,全世界的用户大量使用。Javascript缺乏一个从小到大、慢慢积累用户的过程,而是连续的爆炸式扩散增长。大量的既成网页和业余网页设计者的参与,使得调整语言规格困难重重。更糟的是,Javascript的规格还没来及调整,就固化了。
1996年8月,微软公司强势介入,宣布推出自己的脚本语言Jscript;11月,为了压制微软,网景公司决定申请JavaScript的国际标准;1997年6月,第一个国际标准ECMA-262正式颁布。设计缺陷还没有充分暴露就成了标准。

    推荐阅读