JavaScript语言在什么地方插入JavaScriptJavaScript基本语法JavaScript中的变量表达式与运算符语句对象化编程对象的基本知识基本对象Number“数字”对象。String字符串对象。Array数组对象。Math“数学”对象Date日期对象全局对象Global对象函数全局变量文档对象navigator浏览器对象screen屏幕对象window窗口对象history历史对象location地址对象Button按钮对象Checkbox复选框对象单个Radio对象的属性Select选择区(下拉菜单、列表)对象不显示在文档中的Image对象…..事件处理……………….在什么地方插入JavaScriptJavaScript可以出现在HTML的任意地方。使用标记script…/script,你可以在HTML文档的任意地方插入JavaScript,甚至在HTML之前插入也不成问题。不过如果要在声明框架的网页(框架网页)中插入,就一定要在frameset之前插入,否则不会运行。基本格式script!--...(JavaScript代码)...//--/script第二行和第四行的作用,是让不懂script标记的浏览器忽略JavaScript代码。一般可以省略,因为现在想找不懂Script的浏览器,恐怕就连博物馆里也没有了。第四行前边的双反斜杠“//”是JavaScript里的注释标号,以后将学到。另外一种插入JavaScript的方法,是把JavaScript代码写到另一个文件当中(此文件通常应该用“.js”作扩展名),然后用格式为“scriptsrc=javascript.js/script”的标记把它嵌入到文档中。注意,一定要用“/script”标记。参考script标记还有一个属性:language(缩写lang),说明脚本使用的语言。对于JavaScript,请用“language=JavaScript”。参考相对于script标记,还有一个server标记。server标记所包含的,是服务器端(ServerSide)的脚本。本教程只讨论客户器端(ClientSide)的JavaScript,也就是用script标记包含的脚本。如果想在浏览器的“地址”栏中执行JavaScript语句,用这样的格式:javascript:JavaScript语句这样的格式也可以用在连接中:ahref=javascript:JavaScript语句.../aJavaScript基本语法每一句JavaScript都有类似于以下的格式:语句;其中分号“;”是JavaScript语言作为一个语句结束的标识符。虽然现在很多浏览器都允许用回车充当结束符号,培养用分号作结束的习惯仍然是很好的。语句块语句块是用大括号“{}”括起来的一个或n个语句。在大括号里边是几个语句,但是在大括号外边,语句块是被当作一个语句的。语句块是可以嵌套的,也就是说,一个语句块里边可以再包含一个或多个语句块。JavaScript中的变量什么是变量从字面上看,变量是可变的量;从编程角度讲,变量是用于存储某种/某些数值的存储器。所储存的值,可以是数字、字符或其他的一些东西。变量的命名变量的命名有以下要求:只包含字母、数字和/或下划线;要以字母开头;不能太长(其实有什么人喜欢使用又长又臭的名字呢?);不能与JavaScript保留字(KeyWords,ReservedWords,数量繁多,不能一一列出;凡是可以用来做JavaScript命令的字都是保留字)重复。而且,变量是区分大小写的,例如,variable和Variable是两个不同的变量。不仅如此,大部分命令和“对象”(请参阅“对象化编程”章)都是区分大小写的。提示给变量命名,最好避免用单个字母“a”“b”“c”等,而改用能清楚表达该变量在程序中的作用的词语。这样,不仅别人能更容易的了解你的程序,而且你在以后要修改程序的时候,也很快会记得该变量的作用。变量名一般用小写,如果是由多个单词组成的,那么第一个单词用小写,其他单词的第一个字母用大写。例如:myVariable和myAnotherVariable。这样做仅仅是为了美观和易读,因为JavaScript一些命令(以后将用更具体的方法阐述“命令”一词)都是用这种方法命名的:indexOf;charAt等等。变量需要声明没有声明的变量不能使用,否则会出错:“未定义”。声明变量可以用:var变量[=值];var我们接触的第一个关键字(即保留字)。这个关键字用作声明变量。最简单的声明方法就是“var变量;”,这将为变量准备内存,给它赋初始值“null”。如果加上“=值”,则给变量赋予自定的初始值值。数据类型变量可以用的数据类型有:整型只能储存整数。可以是正整数、0、负整数,可以是十进制、八进制、十六进制。八进制数的表示方法是在数字前加“0”,如“0123”表示八进制数“123”。十六进制则是加“0x”:“0xEF”表示十六进制数“EF”。浮点型即“实型”,能储存小数。有资料显示,某些平台对浮点型变量的支持不稳定。没有需要就不要用浮点型。字符串型是用引号“”、“''”包起来的零个至多个字符。用单引号还是双引号由你决定。跟语文一样,用哪个引号开始就用哪个结束,而且单双引号可嵌套使用:'这里是JavaScript教程。'不过跟语文不同的是,JavaScript中引号的嵌套只能有一层。如果想再多嵌一些,你需要转义字符:转义字符由于一些字符在屏幕上不能显示,或者JavaScript语法上已经有了特殊用途,在要用这些字符时,就要使用“转义字符”。转义字符用斜杠“\”开头:\'单引号、\双引号、\n换行符、\r回车(以上只列出常用的转义字符)。于是,使用转义字符,就可以做到引号多重嵌套:'Micro说:这里是\JavaScript教程\。'布尔型常用于判断,只有两个值可选:true(表“真”)和false(表“假”)。true和false是JavaScript的保留字。它们属于“常数”。对象关于对象,在“对象化编程”一章将详细讲到。由于JavaScript对数据类型的要求不严格,一般来说,声明变量的时候不需要声明类型。而且就算声明了类型,在过程中还可以给变量赋予其他类型的值。声明类型可以用赋予初始值的方法做到:varaString='';这将把aString定义为具有空值的字符串型变量。varanInteger=0;这将把anInteger定义为值为0的整型。变量的赋值一个变量声明后,可以在任何时候对其赋值。赋值的语法是:变量=表达式;其中“=”叫“赋值符”,它的作用是把右边的值赋给左边的变量。下一节将讨论到表达式。JavaScript常数有下列几个:null一个特殊的空值。当变量未定义,或者定义之后没有对其进行任何赋值操作,它的值就是“null”。企图返回一个不存在的对象时也会出现null值。NaN“NotaNumber”。出现这个数值比较少见,以至于我们可以不理它。当运算无法返回正确的数值时,就会返回“NaN”值。NaN值非常特殊,因为它“不是数字”,所以任何数跟它都不相等,甚至NaN本身也不等于NaN。true布尔值“真”。用通俗的说法,“对”。false布尔值“假”。用通俗的说法,“错”。在Math对象中还有一系列数学常数。这将在讨论“对象化编程”时谈到。表达式与运算符表达式与数学中的定义相似,表达式是指具有一定的值的、用运算符把常数和变量连接起来的代数式。一个表达式可以只包含一个常数或一个变量。运算符可以是四则运算符、关系运算符、位运算符、逻辑运算符、复合运算符。下表将这些运算符从高优先级到低优先级排列:括号(x)[x]中括号只用于指明数组的下标求反、自加、自减-x返回x的相反数!x返回与x(布尔值)相反的布尔值x++x值加1,但仍返回原来的x值x--x值减1,但仍返回原来的x值++xx值加1,返回后来的x值--xx值减1,返回后来的x值乘、除x*y返回x乘以y的值x/y返回x除以y的值x%y返回x与y的模(x除以y的余数)加、减x+y返回x加y的值x-y返回x减y的值关系运算xyx=yx=yxy当符合条件时返回true值,否则返回false值等于、不等于x==y当x等于y时返回true值,否则返回false值x!=y当x不等于y时返回true值,否则返回false值位与x&y当两个数位同时为1时,返回的数据的当前数位为1,其他情况都为0位异或x^y两个数位中有且只有一个为0时,返回0,否则返回1位或x|y两个数位中只要有一个为1,则返回1;当两个数位都为零时才返回零位运算符通常会被当作逻辑运算符来使用。它的实际运算情况是:把两个操作数(即x和y)化成二进制数,对每个数位执行以上所列工作,然后返回得到的新二进制数。由于“真”值在电脑内部(通常)是全部数位都是1的二进制数,而“假”值则是全部是0的二进制数,所以位运算符也可以充当逻辑运算符。逻辑与x&&y当x和y同时为true时返回true,否则返回false逻辑或x||y当x和y任意一个为true时返回true,当两者同时为false时返回false逻辑与/或有时候被称为“快速与/或”。这是因为当第一操作数(x)已经可以决定结果,它们将不去理会y的值。例如,false&&y,因为x==false,不管y的值是什么,结果始终是false,于是本表达式立即返回false,而不论y是多少,甚至y可以导致出错,程序也可以照样运行下去。条件c?x:y当条件c为true时返回x的值(执行x语句),否则返回y的值(执行y语句)赋值、复合运算x=y把y的值赋给x,返回所赋的值x+=yx-=yx*=yx/=yx%=yx与y相加/减/乘/除/求余,所得结果赋给x,并返回x赋值后的值注意所有与四则运算有关的运算符都不能作用在字符串型变量上。字符串可以使用+、+=作为连接两个字符串之用。提示请密切注意运算的优先级。编程时如果不记得运算符的优先级,可以使用括号()。例如:(a==0)||(b==0)。一些用来赋值的表达式,由于有返回的值,可以加以利用。例如,用以下语句:a=b=c=10,可以一次对三个变量赋值。语句下面将开始讨论JavaScript基本编程命令,或者叫“语句”。注释像其他所有语言一样,JavaScript的注释在运行时也是被忽略的。注释只给程序员提供消息。JavaScript注释有两种:单行注释和多行注释。单行注释用双反斜杠“//”表示。当一行代码有“//”,那么,“//”后面的部分将被忽略。而多行注释是用“/*”和“*/”括起来的一行到多行文字。程序执行到“/*”处,将忽略以后的所有文字,直到出现“*/”为止。提示如果你的程序需要草稿,或者需要让别人阅读,注释能帮上大忙。养成写注释的习惯,能节省你和其他程序员的宝贵时间,使他们不用花费多余的时间琢磨你的程序。在程序调试的时候,有时需要把一段代码换成另一段,或者暂时不要一段代码。这时最忌用Delete键,如果想要回那段代码怎么办?最好还是用注释,把暂时不要的代码“隐”去,到确定方法以后再删除也不迟。if语句if(条件)语句1[else语句2];本语句有点象条件表达式“?:”:当条件为真时执行语句1,否则,如果else部分存在的话,就执行语句2。与“?:”不同的是,if只是一条语句,不会返回数值。条件是布尔值,必须用小括号括起来;语句1和语句2都只能是一个语句,欲使用多条语句,请用语句块。注意请看下例:if(a==1)if(b==0)alert(a+b);elsealert(a-b);本代码企图用缩进的方法说明else是对应if(a==1)的,但是实际上,由于else与if(b==0)最相近,本代码不能按作者的想法运行。正确的代码是if(a==1){if(b==0)alert(a+b);}else{aler