第03章-JavaScript面向?qū)ο缶幊蘝第1頁
第03章-JavaScript面向?qū)ο缶幊蘝第2頁
第03章-JavaScript面向?qū)ο缶幊蘝第3頁
第03章-JavaScript面向?qū)ο缶幊蘝第4頁
第03章-JavaScript面向?qū)ο缶幊蘝第5頁
已閱讀5頁,還剩24頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

JavaScript語言與Ajax應(yīng)用(第二版)主編董寧陳丹中國水利水電出版社第3章

JavaScript面向?qū)ο缶幊?.1JavaScript內(nèi)置對象

3.2字面量對象

3.3自定義對象

30九月2024JavaScript語言與Ajax應(yīng)用(第二版)23.1JavaScript內(nèi)置對象3.1.1Number與Boolean對象3.1.2String對象與字符串操作3.1.3Array對象3.1.4Date對象3.1.5RegExp對象3.1.6Function對象3.1.7Object對象3.1.8Error對象30九月2024JavaScript語言與Ajax應(yīng)用(第二版)33.1.1Number與Boolean對象1.Number對象Number對象對應(yīng)于原始數(shù)值類型和提供數(shù)值常數(shù)的對象,可通過為Number對象的構(gòu)造函數(shù)指定參數(shù)值的方式來創(chuàng)建一個Number對象的實例。創(chuàng)建Number對象實例的語法如下:varnumObj=newNumber();varnumObj=newNumber(value);30九月2024JavaScript語言與Ajax應(yīng)用(第二版)43.1.1Number與Boolean對象30九月2024JavaScript語言與Ajax應(yīng)用(第二版)5表3-1Number對象常用屬性和方法類型項目及語法簡要說明屬性MAX_VALUE指定腳本支持的最大值MIN_VALUE指定腳本支持的最小值NaN為NotaNumber的簡寫,表示一個不等于任何數(shù)的值NEGTTIVE_INFINITY表示負無窮大的特殊值,溢出時返回該值POSITIVE_INFINITY表示正無窮大的特殊值,溢出時返回該值prototype允許在Number對象中增加新的屬性和方法方法toSource()返回表示當(dāng)前Number對象實例的字符串toString()得到當(dāng)前Number對象實例的字符串表示toFixed(num)返回四舍五入為指定小數(shù)位數(shù)的數(shù)字。小數(shù)點后有固定的

num位數(shù)字。如果必要,該數(shù)字會被舍入,也可以用

0補足,以便它達到指定的長度。valueOf()得到一個Number對象實例的原始值3.1.1Number與Boolean對象2.Boolean對象Boolean對象是對應(yīng)于原始邏輯數(shù)據(jù)類型的內(nèi)置對象,它具有原始的Boolean值,只有true和false兩個狀態(tài),在JavaScript腳本中,1代表true狀態(tài),0代表false狀態(tài)。Boolean對象的實例可通過使用Boolean對象的構(gòu)造函數(shù)、new操作符或Boolean()函數(shù)來創(chuàng)建:varboolObj=newBoolean();varboolObj=newBoolean(value);30九月2024JavaScript語言與Ajax應(yīng)用(第二版)63.1.1Number與Boolean對象Boolean對象為JavaScript腳本語言的封裝對象,表示原始的邏輯狀態(tài)true和false,表3-2列出了其常用的屬性和方法。30九月2024JavaScript語言與Ajax應(yīng)用(第二版)7表3-2Boolean對象常用屬性和方法類型項目及語法簡要說明屬性prototype允許在Boolean對象中增加新的屬性和方法方法toSource()返回表示當(dāng)前Boolean對象實例創(chuàng)建代碼的字符串toString()返回當(dāng)前Boolean對象實例的字符串("true"或"false")valueOf()得到一個Boolean對象實例的原始Boolean值3.1.2String對象與字符串操作

String對象是和原始字符串?dāng)?shù)據(jù)類型相對應(yīng)的JavaScript腳本內(nèi)置對象,屬于JavaScript核心對象之一,主要提供諸多方法實現(xiàn)字符串檢查、抽取子串、字符串連接、字符串分割等字符串相關(guān)操作。語法如下:varMyString=newString();varMyString=newString(string);30九月2024JavaScript語言與Ajax應(yīng)用(第二版)83.1.2String對象與字符串操作

在JavaScript腳本程序編寫過程中,String對象是最為常見的處理目標(biāo),用于存儲較短的數(shù)據(jù)。JavaScript語言提供了豐富的屬性和方法支持,方便Web應(yīng)用程序開發(fā)者靈活地操縱String對象的實例。1.獲取目標(biāo)字符串長度字符串的長度length作為String對象的唯一屬性,且為只讀屬性,它返回目標(biāo)字符串(包含字符串里面的空格)所包含的字符數(shù)。30九月2024JavaScript語言與Ajax應(yīng)用(第二版)93.1.2String對象與字符串操作

2.使用String對象方法操作字符串使用String對象的方法來操作目標(biāo)對象并不操作對象本身,而只是返回包含操作結(jié)果的字符串。例如下面調(diào)用方法將字符串轉(zhuǎn)換為大寫:MyString.toUpperCase();要使用String對象的toUpperCase()方法改變字符串MyString的內(nèi)容,必須將使用toUpperCase()方法操作字符串的結(jié)果返回給原字符串:MyString=MyString.toUpperCase();30九月2024JavaScript語言與Ajax應(yīng)用(第二版)103.1.2String對象與字符串操作

3.連接兩個字符串String對象的concat()方法能將作為參數(shù)傳入的字符串加入到調(diào)用該方法的字符串的末尾并將結(jié)果返回給新的字符串,語法如下:newString=targetString.concat(anotherString);

30九月2024JavaScript語言與Ajax應(yīng)用(第二版)113.1.2String對象與字符串操作

4.返回指定位置的字符串String對象提供幾種方法用于獲取指定位置的字符串。第一種方法slice()有如下兩種參數(shù)形式:slice(num1,num2);slice(num);第二種方法substr()的兩種參數(shù)形式如下:substr(num1,num2);substr(num);第三種方法substring()的兩種參數(shù)形式如下:substring(num1,num2);substring(num);30九月2024JavaScript語言與Ajax應(yīng)用(第二版)123.1.3Array對象

數(shù)組是包含基本和組合數(shù)據(jù)類型的有序序列,在JavaScript腳本語言中實際指Array對象。數(shù)組可用構(gòu)造函數(shù)Array()產(chǎn)生,主要有三種構(gòu)造方法:varmyArray=newArray();varmyArray=newArray(4);varmyArray=newArray(arg1,arg2,...,argN);30九月2024JavaScript語言與Ajax應(yīng)用(第二版)133.1.3Array對象

1.創(chuàng)建數(shù)組并訪問其特定位置元素JavaScript腳本中,使用new操作符來創(chuàng)建新數(shù)組,并可通過數(shù)組元素的下標(biāo)實現(xiàn)對任意元素的訪問。數(shù)組元素下標(biāo)從0開始順序遞增,可通過數(shù)組元素的下標(biāo)實現(xiàn)對它的訪問,例如:vardata=myArray[i];30九月2024JavaScript語言與Ajax應(yīng)用(第二版)143.1.3Array對象

2.?dāng)?shù)組中元素的順序問題Array對象提供相關(guān)相關(guān)方法實現(xiàn)數(shù)組中元素的順序操作,如顛倒元素順序、按Web應(yīng)用程序開發(fā)者制定的規(guī)則進行排列等,主要有Array對象的reverse()和sort()方法。reverse()方法將按照數(shù)組的索引號的順序?qū)?shù)組中元素完全顛倒,語法如下:arrayName.reverse();sort()方法較之reverse()方法復(fù)雜,它基于某種順序重新排列數(shù)組的元素,語法如下:arrayName.sort();該調(diào)用方式不指定排列順序,JavaScript腳本將數(shù)組元素轉(zhuǎn)化為字符串,然后按照字母順序進行排序。30九月2024JavaScript語言與Ajax應(yīng)用(第二版)153.1.3Array對象

3.修改length屬性更改數(shù)組Array對象的length屬性保存目標(biāo)數(shù)組的長度:vararrayLength=arrayName.length;Array對象的length屬性檢索的是數(shù)組末尾的下一個可及(未被填充)的位置的索引值,即使前面有些索引沒被使用,length屬性也返回最后一個元素后面第一個可及位置的索引值。同時,當(dāng)腳本動態(tài)添加、刪除數(shù)組元素時,數(shù)組的length屬性會自動更新。30九月2024JavaScript語言與Ajax應(yīng)用(第二版)163.1.3Array對象

4.連接數(shù)組Array對象提供concat()方法將以參數(shù)傳入的數(shù)組連接到目標(biāo)數(shù)組的后面,并將結(jié)果返回新數(shù)組,從而實現(xiàn)數(shù)組的連接。concat()方法的語法如下:varmyNewArray=myArray.concat(arg1,arg2,…,argN);該方法將按照參數(shù)的順序?qū)⑺鼈兲砑拥侥繕?biāo)數(shù)組myArray的后面,并將最終的結(jié)果返回新數(shù)組myNewArray。30九月2024JavaScript語言與Ajax應(yīng)用(第二版)173.1.4Date對象JavaScript腳本內(nèi)置了核心對象Date,該對象可以表示從毫秒到年的所有時間和日期,并提供了一系列操作時間和日期的方法。Date對象的構(gòu)造函數(shù)通過可選的參數(shù),可生成表示過去、現(xiàn)在和將來的Date對象。其構(gòu)造方式有四種,分別如下:varmyDate=newDate();varmyDate=newDate(milliseconds);varmyDate=newDate(string);varmyDate=newDate(year,month,day,hours,minutes,seconds,milliseconds);30九月2024JavaScript語言與Ajax應(yīng)用(第二版)183.1.5RegExp對象RegExp對象用于存儲檢索模式,它的作用是對字符串執(zhí)行模式匹配。創(chuàng)建RegExp對象的語法如下:varmyPattern=newRegExp(pattern,attributes);其中:①參數(shù)pattern是一個字符串,指定了正則表達式的模式或其他正則表達式;②參數(shù)attributes是一個可選的字符串,包含屬性“g”、“i”和“m”;③返回值返回一個新的RegExp對象,具有指定的模式和標(biāo)志。30九月2024JavaScript語言與Ajax應(yīng)用(第二版)193.1.6Function對象在JavaScript中聲明一個函數(shù)本質(zhì)上為創(chuàng)建Function對象的一個實例,而函數(shù)名則為實例名。先看如下的函數(shù):functionsayHello(username){ console.log("Hello"+name);}調(diào)用該函數(shù),輸入?yún)?shù)“Kitty”,輸出結(jié)果為“HelloKitty”。如果通過創(chuàng)建Function對象的實例的方式來實現(xiàn)該功能,代碼如下:varsayHello=newFunction("name","console.log('Hello'+name)");30九月2024JavaScript語言與Ajax應(yīng)用(第二版)203.1.7Object對象Object對象的實例構(gòu)造方法如下:varmyObject=newObject(string);上述語句構(gòu)造object對象的實例myObject,同時用以參數(shù)傳入的string初始化對象實例,該實例能繼承object對象提供的幾個方法進行相關(guān)處理。參數(shù)string為要轉(zhuǎn)為對象的數(shù)字、布爾值或字符串,此參數(shù)可選,若無此參數(shù),則構(gòu)建一個未定義屬性的新對象。JavaScript腳本支持另外一種構(gòu)造Object對象實例的方法:varmyObject={name1:value1,name2:value2,...,nameN:valueN};30九月2024JavaScript語言與Ajax應(yīng)用(第二版)213.1.8Error對象Error對象用來保存有關(guān)錯誤的信息。Error對象的實例構(gòu)造方法如下:varnewErrorObj=newError();varnewErrorObj=newError(number);varnewErrorObj=newError(number,description);其中的參數(shù)number是與錯誤相聯(lián)的數(shù)字值,如果省略則為零;參數(shù)description用于描述錯誤的簡短字符串,如果省略則為空字符串。30九月2024JavaScript語言與Ajax應(yīng)用(第二版)223.2字面量對象字面量對象提供了一種非常方便地創(chuàng)建新對象值的表示方法。使用如下語法創(chuàng)建字面量對象,并給對象添加屬性和方法:varcustomerObject={customerProperty:value,customerMethod:function};30九月2024JavaScript語言與Ajax應(yīng)用(第二版)233.2字面量對象一個字面量對象就是包含在一對花括號中的0個或多個“鍵:值”對,屬性或方法聲明之間用逗號隔開,鍵的名字在內(nèi)部會被轉(zhuǎn)換成字符串。字面量對象的局限是不能把它當(dāng)作一個類來實例化新的對象。定義一個字面量對象僅僅是定義了一個對象。30九月2024JavaScript語言與Ajax應(yīng)用(第二版)243.3自定義對象3.3.1自定義對象實現(xiàn)方式3.3.2自定義對象實現(xiàn)方式選擇與實例30九月2024JavaScript語言與Ajax應(yīng)用(第二版)253.3.1自定義對象實現(xiàn)方式

JavaScript作為基于對象的編程語言,其對象實例采用構(gòu)造函數(shù)來創(chuàng)建。每一個構(gòu)造函數(shù)包括一個對象原型,定義了每個對象包含的屬性和方法。對象是動態(tài)的,表明對象實例的屬性和方法是可以動態(tài)添加、刪除或修改的。JavaScript腳本中創(chuàng)建自定義對象的方法主要有兩種:通過定義對象的構(gòu)造函數(shù)的方法和原型方式。30九月2024JavaScript語言與Ajax應(yīng)用(第二版)263.3.1自定義對象實現(xiàn)方式1.構(gòu)造函數(shù)方式在構(gòu)造函數(shù)方式中,用戶必須先定義一個對象的構(gòu)造函數(shù),然后再通過new關(guān)鍵字來創(chuàng)建該對象的實例。定義對象的構(gòu)造函數(shù)的方式如下面的示例:functionCar(sColor,iDoors){this.color=sCo

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論