




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
JavaScript主講:姚長江mail:JavaScript面向?qū)ο蟮奶匦允裁词菍ο??在現(xiàn)實世界中,任何實體都可叫對象,比如“人”可看作一個對象?!叭恕本哂行彰?、性別、年齡、身高、體重等特征,“人”可以吃飯、可以開車、可以運動等動作。在編程語言中,對象是為了解決現(xiàn)實世界的一些問題而存在的,比如:已知兩個直角邊長,求斜邊長。簡單的講,對象就是一組屬性與方法的集合。對象是一種復合數(shù)據(jù)類型,或者稱為引用數(shù)據(jù)類型。JavaScript對象種類JavaScript內(nèi)建對象由JavaScript語言規(guī)范定義的一系列對象,這些對象提供了完成各種任務的方法,比如Math對象用戶自定義對象由程序員自己定義的對象,完成特定的任務。瀏覽器對象與文檔對象BOM(瀏覽器對象模型)與DOM(文檔對象模型)的一部分,提供訪問與控制瀏覽器和網(wǎng)頁文檔(HTML文檔)的屬性和方法。這部分不屬于JavaScript語言。(以后講)自定義對象——簡單使用使用Object()構(gòu)造函數(shù)在JS中,Object對象是所有對象的頂層對象,所有對象均繼承Object對象,可以通過Object對象的構(gòu)造函數(shù)Object()創(chuàng)建一個空對象實例,然后向該對象實例添加自己的屬性和方法。JS中,可以動態(tài)添加對象的屬性和方法,對象的屬性可以是基本類型,也可以是復合類型,方法就是對象中的函數(shù)。varobj=newObject();=“張三”;obj.showInfo=function(){;}自定義對象——簡單使用對象直接量對象直接量使用大括號”{}”將對象的“屬性/值”對括起來,各“屬性/值”對之間以逗號“,”隔開,屬性和值之間以冒號“:”隔開。同樣可以在定義之后添加其它屬性。使用delete刪除對象屬性和方法varobj={name:“張三”,sex:“男”,age:30,showInfo:function(){;}};document.write(obj.showInfo());實例:自定義對象的簡單使用JavaScript內(nèi)建對象分類String對象:定義了所有處理字符串的操作。Array對象:提供一個數(shù)組模型,存儲大量有序數(shù)據(jù)。Math對象:定義了所有數(shù)學運算。Date對象:定義了所有處理日期和時間的操作。Boolean對象:定義了處理布爾值的操作。Number對象:定義了處理數(shù)字的操作。Event對象:提供對JavaScript事件的處理信息。ReExp對象:提供對正是表達式的處理(就業(yè)班講)String字符串對象string對象簡介String對象中定義了處理字符串的各種方法,該對象是最常用的對象之一。在JS中通過雙引號或單引號括起來的就是字符串對象。String對象聲明構(gòu)造函數(shù):var實例名稱=newString(“字符串內(nèi)容”);字符串變量:str.toLowerCase()字符串:“abc”.toLowerCase()String內(nèi)建對象length屬性String對象只有一個屬性:length屬性,該屬性得到字符串的長度,即字符串所包含的字符個數(shù)。例如:str.lengthcharAt(index)方法返回字符串中index指定位置處的一個字符。參數(shù):index為字符在字符串的位置索引值如果index超出了索引范圍(即不在0~length-1范圍內(nèi))則返回空字符串。舉例:“e”.charAt(3)的結(jié)果為c實例:判斷用戶輸入的用戶名是否含有特殊符號?String對象indexOf(str[,startIndex])方法在當前字符串中從左到右查找子字符串str,并返回子字符串str第一次出現(xiàn)時的位置索引,如果找不到則返回-1。參數(shù)startIndex可選,表示開始搜索的位置。如果不指定startIndex則由字符串首位開始搜索,否則由startIndex對應的位置(包含該位置)開始搜索。varstr=“GreatDream!GreatWorld!”;vari=str.indexOf(‘Great’);//i=0varj=str.indexOf(‘Great’,2);//j=12vark=str.indexOf(‘Great’,30);//k=-1實例:取出郵箱中域名String對象lastIndexOf(search[,startIndex])方法與indexOf方法作用相同,但是查找的方向為從右到左。如果找到,返回子字符串在字符串中的起始位置,否則返回-1。substr(startIndex[,length])方法從起始索引號提取字符串中指定數(shù)目的字符。參數(shù)startIndex為起始位置索引(包含該位置字符)。參數(shù)length為要提取的子字符串的長度,可選。若不指定length,則提取startIndex開始的所有字符。length不能為負。舉例:varstr=“北京傳智教育”;sub_str=str.substr(0,5);實例:提取郵箱中用戶名和域名,例如:String對象substring(startIndex[,endIndex])提取字符串中兩個指定的索引號之間的字符參數(shù)startIndex表示要截取的子字符串的位置,endIndex為結(jié)束位置,返回的子字符串包括startIndex位置而不包括endIndex位置的字符。舉例:str=“e”;str.substring(4,9);varstr=“GreatWorld!”;varsub_str1=str.substring(6,9);//sub_str1=“Wor”varsub_str2=str.substring(-2);//不支持負值,返回原字符串String對象split(separator[,limitInteger])該方法將字符串中的字符通過指定的分隔符進行分隔,并使用所得各個字符串組成一個數(shù)組。參數(shù)separator為要使用的分隔符。參數(shù)limitInteger為產(chǎn)生的數(shù)組的最大元素數(shù),可選。當指定該參數(shù)時,數(shù)組元素個數(shù)不能超過該值。(1)根據(jù)以下字符串,輸出“今天是星期幾”varstr=“星期日,星期一,星期二,星期三,星期四,星期五,星期六”;(2)根據(jù)表單GET方式提交的字符串,取出用戶名和密碼的內(nèi)容
String對象search(substr)功能:檢索字符串中指定的子字符串,或檢索與正則表達式相匹配的子字符串。返回值:第一個與substr相匹配的子串的起始位置提示:如果沒有找到任何匹配的子串,則返回-1。
(1)判斷以下字符串中,是否含有“beijing”字符varstr=“etoBeijing”;(2)判斷以下電子郵件地址,是否有效Varstr=“”;String對象replace(substr,replacement)在字符串中用一些字符替換另一些字符,或替換一個與正則表達式匹配的子串。參數(shù)substr規(guī)定要查找的子字符串,replacement規(guī)定替換后的字符串。提示:若不使用正則,則只能替換一次。將以下字符串中的“傳智”子字符串,替換為“itcast”varstr=“傳智培訓分校:北京傳智,上海傳智,廣州傳智”;String對象toLowerCase()該方法返回字符串中的字符全部轉(zhuǎn)成小寫得到的字符串,不影響原字符串。toUpperCase()該方法返回字符串中的字符全部轉(zhuǎn)成大寫得到的字符串,不影響原字符串。String對象localeCompare()——結(jié)合數(shù)組來排序功能:使用本地默認的規(guī)則順序來比較兩個字符串(一般用于中文比較)語法:str1.localeCompare(str2)返回值:若str1>str2,則返回1的值若str1=str2,則返回0的值若str1<str2,則返回-1的值說明:本地排序規(guī)則,是指采用底層操作系統(tǒng)提供的排序規(guī)則提示:把<和>運算符應用到字符串時,它們只用字符的Unicode編碼比較字符串,而不考慮當?shù)氐呐判蛞?guī)則。以這種方法生成的順序不一定是正確的。例如,在西班牙語中,其中字符“ch”通常作為出現(xiàn)在字母“c”和“d”之間的字符來排序。Varstr1=“安慶安”;Varstr2=“安徽省”;Varflag=str1.localCompare(str2);//返回1,str1>str2綜合實例:判斷上傳文件類型需要創(chuàng)建一個上傳文件的表單當選擇完文件時,對文件類型進行驗證如果符合要求,輸出“文件類型合法!”如果不符合要求,輸出“非法文件名!”Array對象length屬性設(shè)置或返回數(shù)組中元素的數(shù)目。設(shè)置length屬性可改變數(shù)組的大小。如果設(shè)置的值比其當前值小,數(shù)組將被截斷,其尾部的元素將丟失。如果設(shè)置的值比它的當前值大,數(shù)組將增大,新的元素被添加到數(shù)組的尾部,它們的值為undefined。求下列二維數(shù)組中所有元素的和vararr=[ [10,2,3], [1,2,3], [5,4]];Array對象concat()語法:arrObj.concat(arrX,arrX,arrX,…,arrX)功能:連接兩個或更多的數(shù)組,并返回結(jié)果。參數(shù):arrX必須。該參數(shù)可以是具體的值,也可以是數(shù)組對象注意:該方法不會改變現(xiàn)有的數(shù)組,而僅僅會返回被連接數(shù)組的一個副本。(1)將以下字符串,轉(zhuǎn)換并連接成一個數(shù)組varstr1="張三,男,30";varstr2="大專,北京科技大學";varstr3="河北省石家莊市";Array對象join()功能:將數(shù)組轉(zhuǎn)換成字符串語法:arrayObject.join([separator])參數(shù):separator可選。指定要使用的分隔符。如果省略該參數(shù),則使用逗號作為分隔符。
將以下數(shù)組中各元素用“&”符號連接成一個字符串varstudent=["張三","男",30,"大專","北京科技大學"];Array對象shift()功能:把數(shù)組的第一個元素從其中刪除,并返回第一個元素的值。語法:arrayObject.shift()說明:shift()方法將刪除arrayObject的第一個元素,把數(shù)組長度減1,并返回它刪除的元素的值。該方法將修改原數(shù)組。pop()功能:用于刪除并返回數(shù)組的最后一個元素語法:arrayObject.pop()說明:pop()方法將刪除arrayObject的最后一個元素,把數(shù)組長度減1,并且返回它刪除的元素的值。如果數(shù)組已經(jīng)為空,則pop()不改變數(shù)組,并返回undefined值。實例:刪除數(shù)組的第一個和最后一個元素后,計算數(shù)組的長度vararr=["張三","男",30,"大專","北京科技大學"];Array對象unshift()功能:向數(shù)組的開頭添加一個或更多元素,并返回新的長度。語法:arrayObject.unshift(element1,element2,....,elementX)返回值:arrayObject的新長度。
push()功能:向數(shù)組的末尾添加一個或更多元素,并返回新的長度語法:arrayObject.push(element1,element2,....,elementX)說明:把指定的值添加到數(shù)組后的新長度。實例:將“北京市”添加到數(shù)組的開頭,將“河北省”添加到數(shù)組末尾Vararr=[“天津市”,“上海市”,“重慶市”];Array對象sort()功能:用于對數(shù)組的元素進行排序。語法:array.sort([sortby])參數(shù):sortby可選,規(guī)定排序順序,必須是函數(shù)。返回值:對數(shù)組的引用。請注意,數(shù)組在原數(shù)組上進行排序,不生成副本。說明:如果調(diào)用該方法時沒有使用參數(shù),將按字母順序?qū)?shù)組中的元素進行排序。如果想按照其他標準進行排序,就需要提供比較函數(shù),該函數(shù)要比較兩個值,然后返回一個用于說明這兩個值的相對順序的數(shù)字。比較函數(shù)應該具有兩個參數(shù)a和b,其返回值如下:若a小于b,則返回一個小于0的值。若a等于b,則返回0。若a大于b,則返回一個大于0的值。實例:對下列數(shù)組排序(1)對下面數(shù)組進行升序排序vararr=[“a”,“c”“b”,“d”];(2)對下面數(shù)組進行降序排序vararr=[10,12,13,4,5,8,21](3)對下面數(shù)組進行升序排序vararr=[“北京市”,“天津市”,“南京市”,“安徽省”];Array對象reverse()功能:顛倒數(shù)組中元素的順序。語法:arrayObject.reverse()提示:該方法會改變原來的數(shù)組,而不會創(chuàng)建新的數(shù)組。Date對象JavaScript腳本由客戶端瀏覽器解釋執(zhí)行,腳本中讀取的時間是客戶端計算機操作系統(tǒng)中的時鐘所反映的時間。創(chuàng)建Date對象實例Date對象提供了許多處理時間信息的屬性和方法,在使用Date對象時,需要創(chuàng)建Date對象實例。Date對象構(gòu)造函數(shù)可以通過4種不同格式創(chuàng)建對象實例。創(chuàng)建當前系統(tǒng)日期和時間的實例語法:dateName=newDate();說明:當不提供任何參數(shù)時,Date()構(gòu)造函數(shù)創(chuàng)建一個當前系統(tǒng)時間對應的Date實例,采用本地時間。指定時間戳創(chuàng)建實例語法:dateName=newDate(millisecondsNum);說明:指定一個整數(shù)參數(shù)時,將該參數(shù)作為對象實例距離1970年1月1日0時0分0秒的毫秒數(shù),以此創(chuàng)建實例。實例:myDate=newDate(10000);//對應的是1970年1月1日0時0分10秒創(chuàng)建Date對象實例指定時間字符串創(chuàng)建對應指定時間的實例語法:dateName=newDate(dateString);其中,dateString是一個表示時間的字符串實例:myDate=newDate(“2013/10/1210:00:00”);指定年、月、日、時間等創(chuàng)建Date對象實例dateName=newDate(year,month,date[,hours[,minutes[,seconds[,ms]]]]);在這種格式中,時間由7部分組成,其中,年、月、日必須指定,其余可選。myDate=newDate(2007,10,11);//2007年11月12日Date對象方法方法名描述getFullYear()從Date對象以四位數(shù)字返回年份。例如:2013getMonth()從Date對象返回月份(0~11)。getDate()從Date對象返回一個月中的某一天(1~31)。getDay()從Date對象返回一周中的某一天(0~6)。getHours()返回Date對象的小時(0~23)。getMinutes()返回Date對象的分鐘(0~59)。getSeconds()返回Date對象的秒數(shù)(0~59)。getMilliseconds()返回Date對象的毫秒(0~999)。getTime()返回1970年1月1日至今的毫秒數(shù)。toLocaleString()根據(jù)本地時間格式,把Date對象轉(zhuǎn)換為字符串。toLocaleTimeString()根據(jù)本地時間格式,把Date對象的時間部分轉(zhuǎn)換為字符串。toLocaleDateString()根據(jù)本地時間格式,把Date對象的日期部分轉(zhuǎn)換為字符串。Date對象方法方法名描述setFullYear()設(shè)置Date對象中的年份(四位數(shù)字)。setMonth()設(shè)置Date對象中月份(0~11)。setDate()設(shè)置Date對象中月的某一天(1~31)。setHours()設(shè)置Date對象中的小時(0~23)。setMinutes()設(shè)置Date對象中的分鐘(0~59)。setSeconds()設(shè)置Date對象中的秒鐘(0~59)。setMilliseconds()設(shè)置Date對象中的毫秒(0~999)。setTime()以毫秒設(shè)置Date對象。toGMTString()返回時間對應的格林尼治標準時間的字符串實例:動態(tài)顯示當前時間實例:計算自己已經(jīng)活了多少天了?vartoday=newDate();varyesterday=newDate("1980/9/18");vartime1=today.getTime();vartime2=yesterday.getTime();vardays=(time1-time2)/1000/3600/24;days=Math.ceil(days);document.write("我已經(jīng)活了"+days+"天!");Math對象Math對象提供了一些各種數(shù)學處理方法。Math對象中屬性和方法均為靜態(tài)屬性和方法,直接通過Math關(guān)鍵字進行調(diào)用。例如:Math.abs(-2)屬性名含義Math.E自然對數(shù)的底,對應值為2.718281828459045Math.LN1010的自然對數(shù)。Math.LN22的自然對數(shù)。Math.PI圓周率πMath對象方法名含義abs(x)返回數(shù)的絕對值。ceil(x)對數(shù)進行上舍入。floor(x)對數(shù)進行下舍入。max(x,y)返回x和y中的最高值。min(x,y)返回x和y中的最低值。pow(x,y)返回x的y次冪。random()返回0~1之間的隨機數(shù)。(1>x>=0)round(x)把數(shù)四舍五入為最接近的整數(shù)。sqrt(x)返回數(shù)的平方根。實例:求任意兩個整數(shù)之間的隨機數(shù)求0-10之間的隨機整數(shù)求10-20之間的隨機整數(shù)求22-32之間的隨機整數(shù)Math對象實例——計算器說明:到DOM對象中再講Boolean對象布爾變量和布爾對象如果使用Boolean()函數(shù)時,只是將參數(shù)值轉(zhuǎn)為布爾值返回,而不創(chuàng)建Boolean對象。varflag=Boolean(“”);使用new關(guān)鍵字創(chuàng)建的是Boolean對象。Varobj=newBoolean();當創(chuàng)建一個Boolean類型變量時,同樣可以調(diào)用Boolean對象的方法提示:可以將其它類型
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 洗滌供貨合同范本
- PT-S58-生命科學試劑-MCE
- Cyperol-生命科學試劑-MCE
- AB-BICA-生命科學試劑-MCE
- 冰凍魚購銷合同范本
- 種植基地合同范本
- 油庫檢修合同范本
- 2025年碳酸乙烯酯合作協(xié)議書
- 2025年雄烯二酮項目發(fā)展計劃
- 2025年數(shù)控刃磨床項目合作計劃書
- 南通大學開題報告模版
- 醫(yī)院急救中心勞務外包采購項目評標辦法(評分細則表)
- JTG H12-2015 公路隧道養(yǎng)護技術(shù)規(guī)范
- 2024天津工業(yè)職業(yè)學院教師招聘考試筆試試題
- QCT1067.5-2023汽車電線束和電器設(shè)備用連接器第5部分:設(shè)備連接器(插座)的型式和尺寸
- 石灰石開采項目可行性分析報告
- 2024年高考歷史總復習中外歷史大事年表
- 合金固態(tài)相變?nèi)捉虒W課件
- 追求理解的教學設(shè)計
- 《研學旅行課程設(shè)計》課件-1研學課程資源選擇
- 管網(wǎng)改造工程施工組織設(shè)計
評論
0/150
提交評論