




版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
第3章
JavaScript面向對象編程3.1JavaScript內(nèi)置對象
3.2字面量對象
3.3自定義對象
23六月2025JavaScript語言與Ajax應用(第二版)13.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對象23六月2025JavaScript語言與Ajax應用(第二版)23.1.1Number與Boolean對象1.Number對象Number對象對應于原始數(shù)值類型和提供數(shù)值常數(shù)的對象,可通過為Number對象的構造函數(shù)指定參數(shù)值的方式來創(chuàng)建一個Number對象的實例。創(chuàng)建Number對象實例的語法如下:varnumObj=newNumber();varnumObj=newNumber(value);23六月2025JavaScript語言與Ajax應用(第二版)33.1.1Number與Boolean對象23六月2025JavaScript語言與Ajax應用(第二版)4表3-1Number對象常用屬性和方法類型項目及語法簡要說明屬性MAX_VALUE指定腳本支持的最大值MIN_VALUE指定腳本支持的最小值NaN為NotaNumber的簡寫,表示一個不等于任何數(shù)的值NEGTTIVE_INFINITY表示負無窮大的特殊值,溢出時返回該值POSITIVE_INFINITY表示正無窮大的特殊值,溢出時返回該值prototype允許在Number對象中增加新的屬性和方法方法toSource()返回表示當前Number對象實例的字符串toString()得到當前Number對象實例的字符串表示toFixed(num)返回四舍五入為指定小數(shù)位數(shù)的數(shù)字。小數(shù)點后有固定的
num位數(shù)字。如果必要,該數(shù)字會被舍入,也可以用
0補足,以便它達到指定的長度。valueOf()得到一個Number對象實例的原始值3.1.1Number與Boolean對象2.Boolean對象Boolean對象是對應于原始邏輯數(shù)據(jù)類型的內(nèi)置對象,它具有原始的Boolean值,只有true和false兩個狀態(tài),在JavaScript腳本中,1代表true狀態(tài),0代表false狀態(tài)。Boolean對象的實例可通過使用Boolean對象的構造函數(shù)、new操作符或Boolean()函數(shù)來創(chuàng)建:varboolObj=newBoolean();varboolObj=newBoolean(value);23六月2025JavaScript語言與Ajax應用(第二版)53.1.1Number與Boolean對象Boolean對象為JavaScript腳本語言的封裝對象,表示原始的邏輯狀態(tài)true和false,表3-2列出了其常用的屬性和方法。23六月2025JavaScript語言與Ajax應用(第二版)6表3-2Boolean對象常用屬性和方法類型項目及語法簡要說明屬性prototype允許在Boolean對象中增加新的屬性和方法方法toSource()返回表示當前Boolean對象實例創(chuàng)建代碼的字符串toString()返回當前Boolean對象實例的字符串("true"或"false")valueOf()得到一個Boolean對象實例的原始Boolean值3.1.2String對象與字符串操作
String對象是和原始字符串數(shù)據(jù)類型相對應的JavaScript腳本內(nèi)置對象,屬于JavaScript核心對象之一,主要提供諸多方法實現(xiàn)字符串檢查、抽取子串、字符串連接、字符串分割等字符串相關操作。語法如下:varMyString=newString();varMyString=newString(string);23六月2025JavaScript語言與Ajax應用(第二版)73.1.2String對象與字符串操作
在JavaScript腳本程序編寫過程中,String對象是最為常見的處理目標,用于存儲較短的數(shù)據(jù)。JavaScript語言提供了豐富的屬性和方法支持,方便Web應用程序開發(fā)者靈活地操縱String對象的實例。1.獲取目標字符串長度字符串的長度length作為String對象的唯一屬性,且為只讀屬性,它返回目標字符串(包含字符串里面的空格)所包含的字符數(shù)。23六月2025JavaScript語言與Ajax應用(第二版)83.1.2String對象與字符串操作
2.使用String對象方法操作字符串使用String對象的方法來操作目標對象并不操作對象本身,而只是返回包含操作結果的字符串。例如下面調(diào)用方法將字符串轉換為大寫:MyString.toUpperCase();要使用String對象的toUpperCase()方法改變字符串MyString的內(nèi)容,必須將使用toUpperCase()方法操作字符串的結果返回給原字符串:MyString=MyString.toUpperCase();23六月2025JavaScript語言與Ajax應用(第二版)93.1.2String對象與字符串操作
3.連接兩個字符串String對象的concat()方法能將作為參數(shù)傳入的字符串加入到調(diào)用該方法的字符串的末尾并將結果返回給新的字符串,語法如下:newString=targetString.concat(anotherString);
23六月2025JavaScript語言與Ajax應用(第二版)103.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);23六月2025JavaScript語言與Ajax應用(第二版)113.1.3Array對象
數(shù)組是包含基本和組合數(shù)據(jù)類型的有序序列,在JavaScript腳本語言中實際指Array對象。數(shù)組可用構造函數(shù)Array()產(chǎn)生,主要有三種構造方法:varmyArray=newArray();varmyArray=newArray(4);varmyArray=newArray(arg1,arg2,...,argN);23六月2025JavaScript語言與Ajax應用(第二版)123.1.3Array對象
1.創(chuàng)建數(shù)組并訪問其特定位置元素JavaScript腳本中,使用new操作符來創(chuàng)建新數(shù)組,并可通過數(shù)組元素的下標實現(xiàn)對任意元素的訪問。數(shù)組元素下標從0開始順序遞增,可通過數(shù)組元素的下標實現(xiàn)對它的訪問,例如:vardata=myArray[i];23六月2025JavaScript語言與Ajax應用(第二版)133.1.3Array對象
2.數(shù)組中元素的順序問題Array對象提供相關相關方法實現(xiàn)數(shù)組中元素的順序操作,如顛倒元素順序、按Web應用程序開發(fā)者制定的規(guī)則進行排列等,主要有Array對象的reverse()和sort()方法。reverse()方法將按照數(shù)組的索引號的順序將數(shù)組中元素完全顛倒,語法如下:arrayName.reverse();sort()方法較之reverse()方法復雜,它基于某種順序重新排列數(shù)組的元素,語法如下:arrayName.sort();該調(diào)用方式不指定排列順序,JavaScript腳本將數(shù)組元素轉化為字符串,然后按照字母順序進行排序。23六月2025JavaScript語言與Ajax應用(第二版)143.1.3Array對象
3.修改length屬性更改數(shù)組Array對象的length屬性保存目標數(shù)組的長度:vararrayLength=arrayName.length;Array對象的length屬性檢索的是數(shù)組末尾的下一個可及(未被填充)的位置的索引值,即使前面有些索引沒被使用,length屬性也返回最后一個元素后面第一個可及位置的索引值。同時,當腳本動態(tài)添加、刪除數(shù)組元素時,數(shù)組的length屬性會自動更新。23六月2025JavaScript語言與Ajax應用(第二版)153.1.3Array對象
4.連接數(shù)組Array對象提供concat()方法將以參數(shù)傳入的數(shù)組連接到目標數(shù)組的后面,并將結果返回新數(shù)組,從而實現(xiàn)數(shù)組的連接。concat()方法的語法如下:varmyNewArray=myArray.concat(arg1,arg2,…,argN);該方法將按照參數(shù)的順序將它們添加到目標數(shù)組myArray的后面,并將最終的結果返回新數(shù)組myNewArray。23六月2025JavaScript語言與Ajax應用(第二版)163.1.4Date對象JavaScript腳本內(nèi)置了核心對象Date,該對象可以表示從毫秒到年的所有時間和日期,并提供了一系列操作時間和日期的方法。Date對象的構造函數(shù)通過可選的參數(shù),可生成表示過去、現(xiàn)在和將來的Date對象。其構造方式有四種,分別如下:varmyDate=newDate();varmyDate=newDate(milliseconds);varmyDate=newDate(string);varmyDate=newDate(year,month,day,hours,minutes,seconds,milliseconds);23六月2025JavaScript語言與Ajax應用(第二版)173.1.5RegExp對象RegExp對象用于存儲檢索模式,它的作用是對字符串執(zhí)行模式匹配。創(chuàng)建RegExp對象的語法如下:varmyPattern=newRegExp(pattern,attributes);其中:①參數(shù)pattern是一個字符串,指定了正則表達式的模式或其他正則表達式;②參數(shù)attributes是一個可選的字符串,包含屬性“g”、“i”和“m”;③返回值返回一個新的RegExp對象,具有指定的模式和標志。23六月2025JavaScript語言與Ajax應用(第二版)183.1.6Function對象在JavaScript中聲明一個函數(shù)本質(zhì)上為創(chuàng)建Function對象的一個實例,而函數(shù)名則為實例名。先看如下的函數(shù):functionsayHello(username){ console.log("Hello"+name);}調(diào)用該函數(shù),輸入?yún)?shù)“Kitty”,輸出結果為“HelloKitty”。如果通過創(chuàng)建Function對象的實例的方式來實現(xiàn)該功能,代碼如下:varsayHello=newFunction("name","console.log('Hello'+name)");23六月2025JavaScript語言與Ajax應用(第二版)193.1.7Object對象Object對象的實例構造方法如下:varmyObject=newObject(string);上述語句構造object對象的實例myObject,同時用以參數(shù)傳入的string初始化對象實例,該實例能繼承object對象提供的幾個方法進行相關處理。參數(shù)string為要轉為對象的數(shù)字、布爾值或字符串,此參數(shù)可選,若無此參數(shù),則構建一個未定義屬性的新對象。JavaScript腳本支持另外一種構造Object對象實例的方法:varmyObject={name1:value1,name2:value2,...,nameN:valueN};23六月2025JavaScript語言與Ajax應用(第二版)203.1.8Error對象Error對象用來保存有關錯誤的信息。Error對象的實例構造方法如下:varnewErrorObj=newError();varnewErrorObj=newError(number);varnewErrorObj=newError(number,description);其中的參數(shù)number是與錯誤相聯(lián)的數(shù)字值,如果省略則為零;參數(shù)description用于描述錯誤的簡短字符串,如果省略則為空字符串。23六月2025JavaScript語言與Ajax應用(第二版)213.2字面量對象字面量對象提供了一種非常方便地創(chuàng)建新對象值的表示方法。使用如下語法創(chuàng)建字面量對象,并給對象添加屬性和方法:varcustomerObject={customerProperty:value,customerMethod:function};23六月2025JavaScript語言與Ajax應用(第二版)223.2字面量對象一個字面量對象就是包含在一對花括號中的0個或多個“鍵:值”對,屬性或方法聲明之間用逗號隔開,鍵的名字在內(nèi)部會被轉換成字符串。字面量對象的局限是不能把它當作一個類來實例化新的對象。定義一個字面量對象僅僅是定義了一個對象。23六月2025JavaScript語言與Ajax應用(第二版)233.3自定義對象3.3.1自定義對象實現(xiàn)方式3.3.2自定義對象實現(xiàn)方式選擇與實例23六月2025JavaScript語言與Ajax應用(第二版)243.3.1自定義對象實現(xiàn)方式
JavaScript作為基于對象的編程語言,其對象實例采用構造函數(shù)來創(chuàng)建。每一個構造函數(shù)包括一個對象原型,定義了每個對象包含的屬性和方法。對象是動態(tài)的,表明對象實例的屬性和方法是可以動態(tài)添加、刪除或修改的。JavaScript腳本中創(chuàng)建自定義對象的方法主要有兩種:通過定義對象的構造函數(shù)的方法和原型方式。23六月2025JavaScript語言與Ajax應用(第二版)253.3.1自定義對象實現(xiàn)方式1.構造函數(shù)方式在構造函數(shù)方式中,用戶必須先定義一個對象的構造函數(shù),然后再通過new關鍵字來創(chuàng)建該對象的實例。定義對象的構造函數(shù)的方式如下面的示例:functionCar(sColor,iDoors){this.color=sColor;
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- GB/T 7679.5-2025礦山機械術語第5部分:破碎粉磨設備
- GB/T 28090-2025假蒼耳檢疫鑒定方法
- GB/T 22046-2025地理標志產(chǎn)品質(zhì)量要求洋河大曲
- 地板廠防蟲管理制度
- 培訓護理員管理制度
- 培訓班材料管理制度
- 消防噴淋裝置管理制度
- 外購混凝土管理制度
- 多門店規(guī)范管理制度
- 大學安全安管理制度
- 2025年河南省洛陽市中考一模歷史試題(含答案)
- 2025年度專業(yè)技術人員繼續(xù)教育公需科目考試題(附答案)
- 《陸上風電場工程概算定額》NBT 31010-2019
- 2023 版《中國近現(xiàn)代史綱要》 課后習題答案
- 國家開放大學計算機應用基礎(本) 終結性考試試題及參考答案
- LANTEK蘭特鈑金軟件手冊(下)
- 套管開窗側鉆技術
- 砍掉成本題庫合并
- 嶺南版二年級美術下冊知識點
- 回彈模量原始記錄表格及計算
- I本往復機用戶手冊
評論
0/150
提交評論