您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 咨询培训 > Javascript基于对象[教材]
Javascript基于对象孙进2008-04CES一.简介二.语言基础三.基于对象四.事件处理五.样式表CSS六.参考资料一.简介CES网景公司Livescript解释性语言基于对象简单性安全性动态性跨平台性JavaVBScriptJScriptCES加入到HTML文档中1、buttononclick=“javascript:[javascript代码]”test/button2、scriptlanguage=“javascript”!--[javascript代码]//--/script3、scriptsrc=“other.js”/script二.语言基础CES基本语法语句;语句块{语句或者语句块}变量命名规则:1.只包含字母、数字、下划线;2.必须以字母或者下划线开头;3.不能与javascript保留字重复;4.区分大小写。声明:var变量[=值];CES数据类型数字:十进制、八进制、十六进制123、0765、0xFF、193.98、5E7、字符串:使用单引号(‘)或双引号(“)括起来的N个字符。“测试”、’testiseasy’、布尔值:truefalse对象:后面介绍数组:后面介绍控制字符:以反斜杠(\)开头的不可显示的特殊字符。\n、\r、\t、\”、\’CES基本数据类型的包装器基本数据类型:数字、字符串、布尔值包装器,与之对应的一种对象:Number、String、Boolean直接量定义和构造函数定义varnum=10;varnum=newNumber(10);varstr=“test”;varstr=newString(“test”);varbool=true;varbool=newBoolean(true);CES变量作用域全局变量:定义在所有函数体之外,其作用范围是整个函数。局部变量:定义在函数体之内,只对其该函数是可见的。一些特殊值null一个特殊的空值。null常被看作对象的一个特殊值,即表示“无对象”的值。如果一个变量的值为null,意味着它的值不是有效的对象、数组、数字、字符串、布尔值等。undefined在你使用了一个未声明的变量时,或者使用了已经声明但还没有赋值的变量时,又或者使用了一个并不存在的对象属性时,返回的就是这个值。NaN“NotaNumber”,表示该值“不是数字”。当运算无法返回正确的数值时,就会返回“NaN”值。任何数跟它都不相等,甚至NaN本身也不等于NaN。CES表达式……运算符-、!、++、--、*、/、%、+、-、、=、、=、==、!=、&、|、^、、、、&&、||、?:、=、+=、-=、*=、/=、%=、&=、|=、^=、CES语句if条件语句if(条件)语句1[else语句2];for循环语句for(变量初始化;循环条件;增量方法)语句;while循环语句while(循环条件)语句;do语句while(循环条件);break、continuebreak:立即跳出循环。continue:中止本次循环,并执行下一次循环。CES语句switch语句switch(e){caser1:(注意:冒号)...[break;]caser2:...[break;]...[default:...]}CES函数function关键字定义:function函数名(形参列表){函数体;.return表达式;}说明:1、由关键字function定义,使用return将值返回。2、通过指定函数名(实参)来调用一个函数。3、函数名对大小写是敏感的。CES直接量定义:var变量=function(形参列表){函数体};匿名函数的一种,单行函数体推荐使用。varsquare=function(x){returnx*x;};构造函数定义:var变量=newFunction(形参字符串,函数体字符串);匿名函数的一种,形参和函数体都是用字符串的形式表示,不推荐使用。varsquare=newFunction(“x”,“returnx*x;”);CES数组构造函数定义,并初始化:vara=newArray();a[0]=0.1;a[1]=“test”;a[2]=newDate();也可以把数组元素传递给Array()构造函数,定义并初始化:vara=newArray(0.1,“test”,newDate());如果只传递一个参数,那么该参数表示定义数组的长度:vara=newArray(10);CES直接量定义:vara=[0.1,“test”,newDate()];CES正则表达式构造函数定义:varre=newRegExp(模式[,标志]);模式为正则表达式的模式的字符串。varre=newRegExp(“\d”,“g”);标志为可选的,用来控制匹配方式。i执行大小写敏感的匹配g执行全局匹配,找到所有,而不是找到第一个后就停止。m执行多行匹配直接量定义:varre=/模式/[标志];这里使用正斜杠来包含模式,varre=/\d/g;CES一些常用的方法:re.sourcere.ignoreCasere.globalre.multilinere.lastIndexaResults=re.exec(string)bFound=re.test(string)与之相关的String方法:iIndex=string.search(re)string.replace(re,sReplacement)aResults=string.match(re)aResults=string.split(re)三.基于对象CES对象的基本结构属性方法引用对象的三种途径1、Javascript内建对象NumberStringDateMathArrayRegExp[全局对象]2、浏览器提供的文档对象模型(DOM)对象windowdocumenthistorylocationnavigatorscreenevent3、创建新对象CES一些常用的Javascript内建对象的属性或者方法eval()、isNaN()、parseInt()、parseFloat()escape()、unescape()、encode()、decode()Number.MAX_VALUE、Number.MIN_VALUEstring.length、string.indexOf()、string.charAt()string.split()、string.substring()、string.substr()Math.E、Math.PI、Math.max()、Math.min()、Math.random()newDate()、date.setTime()、date.toLocaleString()date.getDay()、date.getDate()array.length、array.join()、array.reverse()、array.slice()CES一些常用的文档对象模型(DOM)对象的属性或者方法window.alert([sMessage])window.prompt([sMessage][,sDefaultValue])window.confirm([sMessage])oNewWindow=window.open([sURL][,sName][,sFeatures][,bReplace])vReturnValue=window.showModalDialog(sURL[,vArguments][,sFeatures])vReturnValue=window.showModelessDialog(sURL[,vArguments][,sFeatures])iTimerID=window.setTimeout(vCode,iMilliSeconds[,sLanguage])window.clearTimeout(iTimeoutID)window.openerwindow.dialogArgumentswindow.returnValueCES一些常用的文档对象模型(DOM)对象的属性或者方法history.lengthhistory.back()history.forward()history.go(indexOrUrl)location.hreflocation.reload(bReload)location.replace(sUrl)navigator.appNamenavigator.appVersionscreen.widthscreen.heightevent.srcElementevent.buttonevent.keyCodeevent.cancelBubbleevent.typeevent.ctrlKeyevent.altKeyevent.shiftKeyevent.xevent.yevent.offsetXevent.offsetYevent.clientXevent.clientYevent.screenXevent.screenYCES一些常用的文档对象模型(DOM)对象的属性或者方法oElement=document.createElement(sTag)oElement=document.getElementById(sId)aElements=document.getElementsByName(sName)aElements=document.getElementsByTagName(sTagName)document.write(sText)document.writeln(sText)aElements=document.allaForms=document.formsobject.innerHTMLobject.outerHTMLobject.innerTextobject.outerTextobject.classNamesTagName=object.tagNameaNodes=object.childNodesoElement=object.firstChildoElement=object.lastChildbChildNodes=object.hasChildNodes()oElement=object.appedChild(oNode)CES一些常用的文档对象模型(DOM)对象的属性或者方法oTr=table.insertRow([iIndex])table.deleteRow([iIndex])aTrs=table.rowsoTd=tr.insertCell([iIndex])tr.deleteCell([iIndex])atds=tr.cellsCES对象构造函数定义:varo=newObject();o.name=“obj”;o[“bigger”]=true;o.square=function(x){returnx*x;};直接量定义:varo={name:”obj”;bigger:true;square:function(x){returnx*x;}};匿名对象的一种,较少的属性和方法时推荐使用。CES创建新对象“类”的定义:function类名(形参列表){this.属性=值;this.方法=函数;}“类”的定义和函数的定义很相似,也使用function关键字。通过this关键字来指示“类”的属性和方法。“类”常量的定义:类名.常量=值;CESfunctionPeople(name,sex,age){this.name=name;this.sex=sex;this.age=age;this.growen=function(){++this.age;};}People.prototype.rename=function(newname){this.name=newname;}People.
本文标题:Javascript基于对象[教材]
链接地址:https://www.777doc.com/doc-5009614 .html