JavaScript第一回-来龙去脉
简写:JavaScript-JS ECMAScript-ES
写在前面的话:啃文字大多时间不是件愉快的事情,但是我们必须过这个坎,让自己习惯,让自己不讨厌,至于喜欢不喜欢,我们等时间给出答案。
JavaScript由来JavaScript 诞生于1995年,由Netscape Navigator(网景公司,下文统一简称网景)公司设计的语言,目的是用来解决当时的表单输入验证问题(当时是放在服务器端进行的表单验证)。当时微软在IE3上也实现了JavaScript,但是为了避开网景的授权问题,因而在叫法上称为JScript。JavaScript前身其实是叫LiveScript,后来网景浏览器在发布第二版的时候,为了趁当时Java的热度,临时改成了JavaScript。这也让很多不了解JavaScript的人总是误会成Java的亲戚,然而实际上并无关系。再后来,因为微软跟网景公司各自用自己版本的JavaScript,并无一套标准的规则可供参考,所以,在1997年,以JavaScript1.1为蓝本的建议提交给了欧洲计算机制造商协会(ECMA,European Computer Manufacture Association)。该协会指定39号技术委员会负责这次标准化任务,经过几个月,最后完成了ECMA-262,也就是名为ECMAScript的新脚本语言。第二年,ISO/IEC(国际标准化组织和国际电工委员会)。
JS跟ES,大多时候我们是混着叫的,我们也可以不深究,但是既然入了这个门,不管是出于情怀还是更好的理解这门语言,个人觉得很有必要了解的。JS是一门基于浏览器的脚本语言,而ES是欧洲计算机制造协会牵头完成的一种脚本语言的标准。JS是基于ES标准开发出来的一种脚本语言,像node也是基于ES标准开发的一种后台语言。
浏览器的JS语言的实现包括了三个部分:
1. ES,这是JS的核心,是JS必须遵循的国际标准;
2. 文档对象模型,也就是DOM,主要用于操作html的元素节点;
3. 浏览器对象模型,也就是BOM,主要是各个浏览器实现的对象。
ES
ES跟浏览器没有任何的依赖关系,它定义的只是想过脚本语言的基础部分。ES规定这门语言由七部分组成
语法、类型、语句、操作符、关键字、保留字、对象。
这些特性跟java语言以及其他语言类似。
ES的版本更迭:
第一版,主要依据JS1.1编写。
第二版,只做编辑加工,并未实现新特性。
第三版,增加了像正则、异常处理等一些新的特性。第三版的发布标志着ES成为一门真正的编程语言,后续十几年主要兼容的就是这个版本。
第四版,改动巨多,废弃,采用3.1版本替代4.0直接发不成第五版,也就是传说中的ES5。
DOM
为什么要使用DOM?为了能动态改变页面显示。依据的标准是W3C制定的标准,具体的API以及实现后面再详述。
BOM
浏览器对象模型,包括窗口、浏览器信息、location、screen、cookie、XMLHttpRequst等,不过没有标准遵循。
因为JS的运行载体各异,工作学习过程中难免会遇到各种各样的兼容性问题,好在大多数的兼容性问题就算是百度也能解决绝大部分。