欢迎光临散文网 会员登陆 & 注册

(建议收藏)JS基础入门一

2020-05-12 14:47 作者:MagnumHou  | 我要投稿

javascript简介


1.1 Javascript简史

在WEB日益发展的同时,网页的大小和复杂性不断增加,受制于网速的限制,为完成简单的表单验证而频繁地与服务器交换数据只会加重用户的负担,当时走在技术革新最前沿的Netscape(网景) 公司,决定着手开发一种客户端语言,用来处理这种简单的验证。

1995年,就职于Netscape 公司的布兰登·艾奇(Brendan Eich),开始着手为即将于1996年2月发布的Netscape Navigator 2浏览器开发一种名为 LiveScript 的脚本语言。为了尽快完成LiveScript 的开发,Netscape 与Sun 公司建立了一个开发联盟。在Netscape Navigator 2 正式发布前夕,Netscape 为了搭上媒体热炒Java 的顺风车,临时把LiveScript 改名为JavaScript。

由于JavaScript1.0获得的关注度越来越高,1996年,微软就在其Internet Explorer 3 中加入了名为JScript 的JavaScript 实现,这意味着有了两个不同的JavaScript 版本,导致JavaScript没有一个标准化的语法和特性。

1997 年,以JavaScript 1.1 为蓝本的建议被提交给了欧洲计算机制造商协会(ECMA,European Computer Manufacturers Association)。该协会指定39 号技术委员会(TC39,Technical Committee #39)负责“ 标准化一种通用、跨平台、供应商中立的脚本语言的语法和语义”。TC39 由来自Netscape、Sun、微软、Borland 及其他关注脚本语言发展的公司的程序员组成,他们经过数月的努力完成了ECMA-262标准,定义一种名为ECMAScript的新脚本语言。

布兰登·艾奇(1961年~),JavaScript的发明人,目前(2005年至2014年)在Mozilla公司担任CTO。2014年4月3日,出任Mozilla的CEO十天就被迫辞职。


1.2 ECMAScript版本发展

1998年6月,ECMAScript 2.0版发布。

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

2007年10月,ECMAScript 4.0版草案发布,对3.0版做了大幅升级。草案发布后,由于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,在更远的将来再考虑推出。

2011年6月,ECMAscript 5.1版发布,并且成为ISO国际标准(ISO/IEC 16262:2011)。

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

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

2015年6月17日,ECMAScript 6发布正式版本,即ECMAScript 2015。

2015版本也就是6版本,将来在我们最后面的课程。


1.3 应用

数据验证

读写HTML元素、动态的修改样式

与用户进行交互

网页特效

WEB游戏制作

基于Node.js技术进行服务器端编程

举例:

JS应用


1.4 ECMAScript脚本语言

Javascript,JScript,ActionScript等脚本语言都是基于ECMAScript标准实现的。

在JavaScript,JScript和ActionScript中声明变量,操作数组等语法完全一样,因为它们都是ECMAScript。但是在操作浏览器对象等方面又有各自独特的方法,这些都是各自语言的扩展。

JavaScript是由ECMAScript核心语法,DOM和BOM三者组成的。

ECMAScript核心语法:JS语法格式、常量变量、数据类型、流程语句、函数、内置对象等

BOM: Browser Object Model 浏览器对象模型  封装的是操作浏览器相关的API

DOM: Document Object Model 文档对象模型  封装的是操作文档相关的API

1.5 JavaScript和Java的关系

  1. 它们是两个公司开发的不同的两个产品,Java是SUN公司推出的新一代面向对象的程序设计语言,特别适合 于Internet应用程序开发;而JavaScript是Netscape公司的产品,其目的是为了扩展Netscape Navigator功能而开发 的一种可以嵌入Web页面中的基于对象和事件驱动的解释性语言。

  2. JavaScript是基于对象的,而Java是面向对象的,即Java是一种真正的面向对象的语言,即使是开发简单 的程序,必须设计对象。JavaScript是种脚本语言,它可以用来制作与网络无关的,与用户交互作用的复杂软件。它是 一种基于对象和事件驱动的编程语言。因而它本身提供了非常丰富的内部对象供设计人员使用。

  3. 两种语言在其浏览器中所执行的方式不一样。Java的源代码在传递到客户端执行之前,必须经过编译,因而 客户端上必须具有相应平台上的仿真器或解释器,它可以通过编译器或解释器实现独立于某个特定的平台编译代码的束缚。 JavaScript是一种解释性编程语言,其源代码在发往客户端执行之前不需经过编译,而是将文本格式的字符代码发送给客 ,由浏览器解释执行。

  4. 两种语言所采取的变量是不一样的。Java采用强类型变量检查,即所有变量在编译之前必须作声明。JavaScript中 变量声明,采用其弱类型。即变量在使用前不需作声明,而是解释器在运行时检查其数据类型。

  5. 格式不一样。Java是一种与HTML无关的格式,必须通过像HTML中引用外媒体那么进行装载,其代码以字节代码 的形式保存在独立的文档中。JavaScript的代码是一种文本字符格式,可以直接嵌入HTML文档中,并且可动态装载。编写HTML 文档就像编辑文本文件一样方便。

  6. 嵌入方式不一样。在HTML文档中,两种编程语言的标识不同,JavaScript使用<script>...</script>来标识,而 Java使用<applet> ... </applet> 来标识。

  7. 绑定和动态绑定。Java采用静态联编,即Java的对象引用必须在编译时的进行,以使编译器能够实现强类型检 查,如不经编译则就无法实现对象引用的检查。JavaScript采用动态联编,即JavaScript的对象引用在运行时进行检查。

1.6 补充

JavaScript的编写环境:文本编辑器

JavaScript的执行平台:Web浏览器

JavaScript的执行方式:解释执行(由上而下)


JavaScript的特点:

  1. 简单、易学、易用:学习环境无外不在,只要有文本编辑器,就能编写JavaScript程序。

  2. 跨平台:IE、Navigator

  3. 事件驱动式的脚本程序设计思想

  4. 动态、交互式的操作方式

(建议收藏)JS基础入门一的评论 (共 条)

分享到微博请遵守国家法律