1动态网页脚本语言JavaScript主要内容一.概述二.编程基础三.面向对象的基本概念四.内置对象五.浏览器窗口对象2JavaScript是由Netscape公司开发的一种跨平台,面向对象(object-oriented)的网页脚本语言(WebScriptLanguage),是目前流行的网页特效设计语言。JavaScript代码可直接嵌入HTML文件中,随网页一起传送到客户端浏览器,然后通过浏览器来解释执行。JavaScript概述31.什么是JavaScript脚本语言?(1)脚本语言(ScriptingLanguage)?由ASCII码构成,可直接用任何的文本编辑器开发完成。是一种不必事先编译,只要利用适当的解释器(Interpreter)就可以执行的简单的解释式程序。(2)JavaScript?JavaScript是由Netscape公司开发的一种跨平台,纯面向对象(object-oriented)式的网页式脚本语言(WebScriptLanguage)。JavaScript代码可直接嵌入HTML文件中,随网页一起传送到客户端浏览器,然后通过浏览器的解释器来解释执行。JavaScript概述4脚本编写语言基于对象的语言简单性动态性跨平台2.JavaScript的特点JavaScript概述5制作网页特效提供表单前端验证窗口动态操作提高系统工作效率3.JavaScript的功能JavaScript概述6在HTML标记中直接写入JavaScript代码例:HTMLBODYPonMouseOver=“alert(‘欢迎您学习JavaScript!')鼠标移过来/P/BODY/HTML运行4.在HTML文档中嵌入JavaScript代码JavaScript概述7将JavaScript代码放入SCRIPT…/SCRIPT标记符中例如:SCRIPTlanguage=JavaScriptdocument.write(欢迎您学习JavaScript!);/SCRIPT运行STYLE……/STYLE4.在HTML文档中嵌入JavaScript代码JavaScript概述8将代码独立存储为以.js为扩展名的文件,利用SRC属性将该文件调入例如:scriptlanguage=JavaScript“src=welcome.js/scriptwelcome.js文件内容如下:document.write(欢迎您学习JavaScript!);4.在HTML文档中嵌入JavaScript代码JavaScript概述举例9document.write();varA=UppercaseA;document.write(A);document.write(UppercaseA);document.write(BR);document.write(gv=+A+BR);10为避免某些浏览器不完全支持JavaScript,而造成错误,可将JavaScript代码用注释语句括起来例如:Script!--……--/Script4.在HTML文档中嵌入JavaScript代码JavaScript概述11数值型(Number):包含整数或浮点数。布尔型(Logical):取值为true或false。1,0字符型(String):用单引号或双引号括起来的零个或多个的字符或数字所组成。空类型(null):表示没有值,取唯一值”null”,大小写敏感。注:null不能写成Null或NULL。null既不等于“0”,也不等于“空字符串”。因为“0”是数值,“空字符串”是字符串。1.数据类型JavaScript编程基础12a)自动数据类型转换如果表达式中用(+)运算符,且其中一个操作数为字符串,另一个操作数为数值时,JavaScript自动将数值转成字符串。例如:varx=”我今年”+18;结果:x=“我今年18”varx=”15”+8结果:x=158vary=15+8;结果:y=23如果表达式中用了其它运算符,JavaScript自动将字符串转成数值。例如:varx=”30”/5;结果:x=6vary=”15”-“8”;结果:y=7举例2.数据类型转换JavaScript编程基础13b)数据类型转换函数eval(字符串):将字符串参数转换成相应的数值,例如:y=eval(“15”)+8;结果:y=23parseInt(字符串,[底数]):将字符串转换成指定底数的数值。parseFloat(字符串):将字符串转换成浮点数值。举例2.数据类型转换JavaScript编程基础143.变量JavaScript编程基础a)变量命名以字母或下划线开头(不能以数字开头),后面接数字、字母或下划线。变量名区分大小写。不能用系统保留字和特殊符号作为变量例:scriptvarA=UppercaseA;vara=Lowercasea;document.write(A);document.write(BR);document.write(a);/script153.变量JavaScript编程基础b)变量的声明变量声明时,不必定义类型,所有类型均由小写的var声明。例如:varname;(JavaScript自动给出一个未定义值)varname,sex;(JavaScript自动给出一个未定义值)varname=”张永”,sex=”女生”;(二变量均为字符串)163.变量JavaScript编程基础c)变量的作用域:全局变量(Globalvariable)局部变量(Localvariable)Scriptvargv=JavaScript;//gv是全局变量functiontest(){varlv=VBScript;//lv是局部变量document.write(gv=+gv+br);document.write(lv=+lv+br+br);}test();document.write(document的输出:br);document.write(gv=+gv+br);document.write(lv=+lv+br);/Script举例174.常量JavaScript编程基础a.字符串常量:(StringLiterals)一般字符串常量:‘’,“”特殊字符的字符串常量b.布尔常量:(BooleanLiterals):true或false1,0c.数值型:整数常量(IntegersLiterals)浮点常量(Floating-PointLiterals)字符意义字符意义\b后退一格(Backspace)\t制表(Tab)\f换页(Formfeed)\’单引号\n换行(Newline)\”双引号\r返回(Carriagereturn)\\反斜线(Backslash)185.运算符与表达式JavaScript编程基础a)赋值运算符运算符意义运算符意义=x=5/=x=x/y+=x=x+y%=求余赋值-=x=x-y*=x=x*yx+=y等价于x=x+yx%=y等价于x=x%y195.运算符与表达式JavaScript编程基础b)比较运算符举例操作符描述举例A==B如果两个操作数相等,返回truePsw==passwordA!=B如果两个操作数不等,返回truemobile.length!=11A=B如果A大于或者等于B,返回truetries=2AB如果A大于B,返回truemflag20A=b如果A小于或等于B,返回truei=0AB如果A小于或等于B,返回truetries10205.运算符与表达式JavaScript编程基础c)算术运算符举例运算符意义运算符意义运算符意义+加(Addition)/除(Division)--递减(Decrement)-减(Subtraction)%求余(Modulus)-取负值(UnaryNegation)*乘(Multiplication)++递增(Increment)215.运算符与表达式JavaScript编程基础d)逻辑运算符a&&b:逻辑与(AND),若a,b都是ture,则结果为ture。a||b:逻辑或(OR),若a,b任一是ture,则结果为ture。!a:逻辑非(NOT),若a是ture,则结果为false。225.运算符与表达式JavaScript编程基础e)字符串运算符(Stringoperators)f)条件运算符(?)格式:条件表达式?值1:值2如果条件表达式的结果是ture,返回值1,否则返回值2。vara,b;max=ab?a:b举例235.运算符与表达式JavaScript编程基础g)typeof:用来判断操作数的类型格式:typeof操作数或typeof(操作数)举例24属性对象类型:方法对象实例对象实例名.属性对象实例名.方法如:窗口p102JavaScript编程基础255.运算符与表达式JavaScript编程基础h)new:定义对象实例。语法:对象实例名=new对象类型(参数)例如:myArray=newArray(3)i)this:代表当前对象,因此用在不同的地方,就有不同的结果。this.属性this.方法举例266.程序控制流程JavaScript编程基础a)选择结构if逻辑表达式语句else语句if逻辑表达式{语句组}else{语句组}if逻辑表达式{语句组}elseif逻辑表达式{语句组}else{语句组}举例276.程序控制流程JavaScript编程基础b)Switch结构switch(变量){case特定数值1:语句或语句组1;break;case特定数值2:语句或语句组2;break;default:语句或语句组;}286.程序控制流程JavaScript编程基础b)循环结构while(逻辑表达式){语句组}Scriptvari=5;while(i0){document.write(i=+i+BR);i--;}/Script例296.程序控制流程JavaScript编程基础b)循环结构Scriptvari=5;do{document.write(i=,i,BR);i--;}while(i0)/Script例do{语句或语句组}while(逻辑表达式)306.程序控制流程JavaScript编程基础b)循环结构for([初始值];[条件];[增量]){语句或语句组}Scriptfor(vari=5;i0;i--){document.write(i=,i,BR);}/Script316.程序控制流程JavaScript编程基础b)循环结构for(iinar){document.write(FONTsize=4,ar[i],/FONTBR);}例1for(变量in对象){语句或语句组}326.程序控制流程JavaScript编程基础C)With语句with(对象){语句或语句组}Scriptdocument.write(限时抢购物品:);document.write(LiViewSonic17\显示器。);document.write(LiEPSON打印机。);/ScriptScriptwith(document){write(限时抢购物品:);write(LiViewSonic17\显示器。);write(LiEPSON打印机。);}/Script例1336.程序控制流程JavaScript编程基础c)注释语句//单行注释语句/*多行注释语句*/!----34JavaScript包含两类函数:•系统函数•用户自定义函数7.JavaScript函数JavaScript编程基础351)编码函数功能:将字符串中非文字、数字字符(如&,%,#,^,空格符…)转成相对应的ASCII值。语法:escape(字符串