小引
笔者认为web开发包括设计html,javascript,css,以及一种高级语言,比如c#,java等等,本文分为三部分,第一部分为简单介绍javascript,第二部分为理解ECMAscript,最后部分为为javascript基础,所以针对javascript笔者不是很深理解,只能从下面几点对他进行分析,要是不对,请指出,谢谢!主要内容为:
第一部分:
javascript
特点
javascript的实现
ECMAScript标准
javascript的发展
第二部分:
关于 ECMAScript
1、相同的句法
2、面向对象编程
3、函数也是对象
4、对象都有原型
5、数据构造方便
6、JavaScript对象符号(JSON)
7、Fifth Edition
第三部分:
1、javascript语法
2、变量
3、数据类型
4、条件语句
5、循环语句
6、函数
参考
第一部分:
javascript介绍
JavaScript是一种基于对象(Object)和事件驱动(Event Driven)并具有安全性能的脚本语言。使用它的目的是与HTML超文本标记语言、Java 脚本语言(Java小程序)一起实现在一个Web页面中链接多个对象,与Web客户交互作用。从而可以开发客户端的应用程序等。它是通过嵌入或调入在标准的HTML语言中实现的。它的出现弥补了HTML语言的缺陷,它是Java与HTML折衷的选择.
特点
是一种脚本编写语言
JavaScript是一种脚本语言,它采用小程序段的方式实现编程。像其它脚本语言一样,JavaScript同样已是一种解释性语言,它提供了一个易的开发过程。它的基本结构形式与C、C++、VB、Delphi十分类似。但它不像这些语言一样,需要先编译,而是在程序运行过程中被逐行地解释。它与HTML标识结合在一起,从而方便用户的使用操作。 基于对象的语言。JavaScript是一种基于对象的语言,同时以可以看作一种面向对象的。这意味着它能运用自己已经创建的对象。因此,许多功能可以来自于脚本环境中对象的方法与脚本的相互作用。
简单性
JavaScript的简单性主要体现在:首先它是一种基于Java基本语句和控制流之上的简单而紧凑的设计, 从而对于学习Java是一种非常好的过渡。其次它的变量类型是采用弱类型,并未使用严格的数据类型。
安全性
JavaScript是一种安全性语言,它不允许访问本地的硬盘,并不能将数据存入到服务器上,不允许对网络文档进行修改和删除,只能通过浏览器实现信息浏览或动态交互。从而有效地防止数据的丢失。
动态性的
JavaScript是动态的,它可以直接对用户或客户输入做出响应,无须经过Web服务程序。它对用户的反映响应,是采用以事件驱动的方式进行的。所谓事件驱动,就是指在主页(Home Page)中执行了某种操作所产生的动作,就称为“事件”(Event)。比如按下鼠标、移动窗口、选择菜单等都可以视为事件。当事件发生后,可能会引起相应的事件响应。
跨平台性
JavaScript是依赖于浏览器本身,与操作环境无关,只要能运行浏览器的计算机,并支持JavaScript的浏览器就可正确执行。从而实现了“编写一次,走遍天下”的梦想。实际上JavaScript最杰出之处在于可以用很小的程序做大量的事。无须有高性能的电脑,软件仅需一个字处理软件及一浏览器,无须WEB服务器通道,通过自己的电脑即可完成所有的事情。
综合
JavaScript 是一种新的描述语言,它可以被箝入到 HTML 的文件之中。 JavaScript语言可以做到回应使用者的需求事件 (如: form 的输入) ,而不用任何的网路来回传输资料,所以当一位使用者输入一项资料时,它不用经过传给伺服端 (server)处理,再传回来的过程,而直接可以被客户端 (client) 的应用程式所处理。
JavaScript 和 Java 很类似,但到底并不一样! Java 是一种比 JavaScript 更复杂许多的程式语言,而 JavaScript 则是相当容易了解的语言。JavaScript 创作者可以不那麽注重程式技巧,所以许多 Java 的特性在 Java Script 中并不支援。
JavaScript实现
核心(ECMAScript)——JavaScript的核心ECMAScript描述了该语言的语法和基本对象
文档对象模型(DOM)——DOM描述了处理网页内容的方法和接口
浏览器对象模型(BOM)——BOM描述了与浏览器进行交互的方法和接口
ECMAScript标准
1997年,欧洲计算机制造商协会(ECMA)在JavaScript语言规范的基础上制定了ECMA-262标准,形成了网页脚本语言的规范。目前各主流浏览器均支持符合 ECMA-262标准的脚本语言。从此,Web浏览器就开始努力(虽然有着不同程度的成功和失败)将ECMAScript作为JavaScript实现的基础。尽管ECMAScript是一个重要的标准,但它并不是JavaScript唯一的部分,当然,也不是唯一被标准化的部分。实际上,一个完整的JavaScript实现是由以下3个不同部分组成的:
核心(ECMAScript)——JavaScript的核心ECMAScript描述了该语言的语法和基本对象
文档对象模型(DOM)——DOM描述了处理网页内容的方法和接口
浏览器对象模型(BOM)——BOM描述了与浏览器进行交互的方法和接口
目前所有的主流 Web 浏览器都支持 ECMA-262 第三版,即JavaScript 1.5版本,JavaScript 1.6-1.9只是ECMAScript (JavaScript on Gecko)升级至JavaScript 2.0的临时代号。
JavaScript的发展趋势
语言永远被当做工具,这一点从来都没有被改变过,以后也不会,语言是使用及和其他技术进行交流的方式和手段。例如,在Windows平台上,使用ADODB组件可以使JavaScript能处理支持SQL的数据库中的数据,使用FSO组件可以实现本地文件IO功能。这一切都说明了JavaScript位于应用开发的最顶端,其与低层技术的实现无关。
尽管平台技术不断发生变化,JavaScript仍将以不变的形式去使用平台提供的能力从而适应新的需求。未来的一段时间内,Web开发将是开发者众聚之地,也是JavaScript变得紫红的时代。
第二部分:
关于 ECMAScript
ECMAScript是ECMA(European Computer Manufacturers Association)制定的标准脚本语言(JAVAScript),目前推荐遵循的是ECMAScript 262(http://www.ecma.ch/ecma1/STAND/ECMA-262.HTM),首先ECMAScript规范描述了脚本编程语言应实现的基本内容如下:语法 ,数据和变量的类型 ,语句 ,关键字 ,保留字 ,运算符 对象。所以符合ECMA-262规范的脚本编程语言必须实现该规范描述的所有的"类型、值、对象、属性、函数和程序语法及语义",并且必须支持Unicode字符标准(UCS)。在此基础上,每个具体实现还可以指定"额外的类型、值、对象、属性和函数",可以定义新的"程序和正则表达式语法"等。
1、相同的句法
首先是相同的句法,ECMAScript与其他流行的开放语言如c#,java,很类似,也就意味着其他语言风格看起来很想在ECMAScript上,比如
for(i = 0; i < a.length; i++) {
if (a[i] == x)
return i;
}
2、面向对象编程
ECMAScript的支持面向对象编程。在ECMAScript对象命名属性的值。对象的属性,函数可以被称为方法。
window.setTitle(user.name);
3、函数也是对象
ECMAScript的功能是对象和属性作为参数传递,可以存储,并作为结果返回。从函数式编程上,让你的函数和方法导入功能从他们的调用者那里得到一个简单而灵活的方式。
var recent = posts.sort(function(a, b) {
return (a.date > b.date ? -1 : 1);
}).slice(0, 10);
4、对象都有原型
受到本身程序语言的鼓舞,ECMAScript的对象继承原型对象的属性,基于原型的编程方便容易委托和灵活的覆盖对象的行为。
function Car() { }
Car.prototype = new Object();
Car.prototype.wheels = 4;
Car.prototype.color = "black";
function RaceCar() { }
RaceCar.prototype = new Car();
RaceCar.prototype.color = "red";
var vroom = new RaceCar();
vroom.wheels // 4
vroom.color // "red"
5、数据构造方便
ECMAScript中谈到许多常见的数据类型,这样可以节省时间,使你的程序更加易读速记。
Arrays
var digits = [3, 1, 4, 1, 5, 9];
Objects
var img = { width: 320, height:160, src: "images/es.png" };
正则表达式
var email = /([^@])@([^@])/;
6、JavaScript对象符号(JSON)
JSON是一种流行,轻量级的数据交换格式。 JSON是交互式的网页和网络服务,部分特别有用,因为它的语法是ECMAScript的语法的一个子集。
7、Fifth Edition
欧洲计算机制造商协会最近公布的新的ECMAScript标准第五版的最终候选人草案。一些新的功能包括:
1、提高标准库
2、标准化的JSON库
3、反射的getter和setter方法
第三部分:
1、javascript语法
1.1区分大小写
1.2弱项类型变量
var MyName="Xinzhu";var Age =22;var School="Gxnu";var male=true; 1.3每项结尾分号可有,可无
1.4括号用于代码块
if(myName=="xinzhu"){
var age=22;
alert(age);
}
1.5javascript注释方式和c语言,java相同
2、变量
通过var关键字声明,如:var boy="xinzhu";这里要注意,首字符是字母,可以是大小写,下划线和$,剩下的可以是下划线,$,任意之母;变量名不可以是关键字或者保留字
3、数据类型
underfined,代表一切不可知的事情,可以将underfined赋值给任何变量或者属性,但是并不意味清除该变量,反而会因此多了一个属性
null,大概有这个概念,但是什么东西都没有
boolean,是和非,用于代码处理和控制代码流程
Number,线性的事物,大小写和次序分明,用于代码进行批量处理,可以控制代码迭代或循环
String,面向人们的理性事物,可以通过人机沟通的信息,代码可以理解人的意图
4、条件语句
比较操作符,逻辑操作符,if语句,switch语句,这些都会很简单不布列
5、循环语句
for, while, 太简单不布列
6、函数
javascript代码只有function一种形式,function就是函数的类型,用于完成一个事件的方法
格式:
function functionName([arg0,arg1,arg2......argN]){
statements
[returm[expression]]
}
例子:
function sayHello(sName){
alert("Hello"+sName);
}
sayName(xinzhu);//调用
参考
1、2012年3月编程语言排行榜:JavaScript语言的回归(1)
2、it公司面试手册
3、Standard ECMA-262:http://www.ecma-international.org/publications/standards/Ecma-262-arch.htm
4、ecmascript:http://www.ecmascript.org/index.php
5、《精通JavaScript.jQuery》