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中四种基本的数据类型:数值(整数和实数)、字符串型(用“”号或‘’括起来的字符或数值)、布尔型(使True或False表示)和空值。在JavaScript的基本类型中的数据可以是常量,也可以变量。由于JavaScript采用弱类型的形式,因而一个数据的变量或常量不必首先作声明,而是在使用或赋值时确定其数据的类型的。当然也可以先声明该数据的类型,它是通过在赋值时自动说明其数据类型的。
程序构成
if,for,while语句与C,java一样。
for ..in..语句
格式如下:
For(对象属性名 in 已知对象名)
example:
显示数组中的内容
- function showData(object){
- for(var i=0;i<30;i++){
- document.write(object[i]);
- }
- }
用for...in语句可以写为
- function showData(object){
- for(var prop in object)
- document.write(object[prop]);
- }
JavaScript函数定义
function 函数名(参数){
函数体;
return 表达式;
}
事件列表
onclick,onchange,onsubmit,onselect,onfocus,onblur,onload,onunload....
创建新对象
- <script language="javascript">
- function person(name,sex,age){
- this.name = name;
- this.sex = sex;
- this.age = age;
- this.showPerson = showPerson;
- }
- function showPerson(){
- for(var prop in this){
- alert(prop +": "+ this[prop]);
- }
- }
- p = new person("yanghongbin","male","20");
- p.showPerson();
- </script>
创建新数组
- <script language="javascript">
- function array(size){
- for(var i = 1;i<=size;i++){
- this[i]=i;
- }
- this.length = size ;
- return this;
- }
- function showarray(){
- myarray = new array(5);
- for(var i = 1 ; i<=myarray.length;i++){
- document.write(myarray[i]);
- }
- }
- showarray();
- </script>
内部数组
在Java中为了方便内部对象的操作,可以使用窗体(Forms)、框架(Frames)、
元素(element)、链接(links)和锚(Anchors)数组实现对象的访问。
anchors[]:使用《A name=“anchorName“》标识来建立锚的链接。
links[]: 使用<A href=”URL”>来定义一个越文本链接项。
Forms[]: 在程序中使用多窗体时,建立该数组。
Elements[]:在一个窗口中使用从个元素时,建立该数组。
Frames[]:建立框架时,使用该数组
anchors[]用于窗体的访问(它是通过《form name=“form1”》所指定的),link[]
用于被链接到的锚点的访问(它是通过《a href=URL》所指定的)。Forms[]反映窗体的
属性,而anchors[]反映Web页面中的链接属性。
操作表单内容
- <Html>
- <head>
- </head>
- <body>
- <form >
- <input type=text onChange="document.my.elements[0].value=this.value;" >
- </form>
- <form NAME="my">
- <input type=text onChange="document.forms[0].elements[0].value=this.value;">
- </form>
- </body>
- </html>
窗口的输入输出
输入
window.prompt("提示信息","默认值");
输出
window.alert() - 有一个OK按钮的提示框
window.confirm() - 有OK和CANCEL按钮的提示框
window.open(参数表) - 打开一个新窗口
用FORMS[]数组可以遍历整个页面的表单
document.forms[0].elements[0]
document.forms[0].elements[1]
document.forms[1].elements[0]
document.forms[1].elements[1]
框架间的表单信息交互
框架名.document.表单名.表单控件名