下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
ECMAScript基礎(chǔ)類以及AAjaX對類Object的擴(kuò)展“EverythingisObjeCt”,在面向?qū)ο蟮木幊陶Z言中誰都知道這句話,但對我來說這是一種感覺,只可意會很難言傳。由于我對javascript和薄弱,所以在看AAjaX類庫的同時也翻出了ECMAScript順便學(xué)習(xí)學(xué)習(xí)。在.NET中所有類都是繼承自O(shè)bjeCt,同樣在JS中也一樣說有都繼承ObjeCt,因此如果對ObjeCt進(jìn)行了擴(kuò)展,那所有繼承ObjeCt類的后代肯定會擁有祖先的血緣。既然開始學(xué)習(xí)JaVaSCript那就順便在這里提一提他的原始數(shù)據(jù)類型,在JS中有5個原始數(shù)據(jù)類型(Undefined、Null、Boolean、Number、String),可以通過typeof來判斷變量和值的數(shù)據(jù)類型Undefined:當(dāng)變量被聲明但沒有被初始化,或函數(shù)沒有明確返回一個值的時候,該變量或函數(shù)即為Undefined類型,是Null類型的一種特性。Null:當(dāng)一個對象的值不存在時,該對象返回null。BooIean:一看就知道,一男一女true/false,值得注意的是0不等于false,但是可以轉(zhuǎn)化為false。NUmber:可以定義32位整型數(shù)據(jù)或64位浮點(diǎn)型數(shù)據(jù)。從網(wǎng)上的一些資料知道,浮點(diǎn)數(shù)在未被計(jì)算之前是以String類型存儲(不知道是真是假)。當(dāng)浮點(diǎn)類型數(shù)據(jù)很大或很小時(可以前后移動六位),將使用E表示法來表示浮點(diǎn)數(shù)據(jù),最大可以存儲17位數(shù)據(jù)。另外,isFinite()方法可以判斷一個數(shù)值是否有限,isNaN()方法可以判斷一個數(shù)據(jù)是非數(shù)字類型。通過ParSeInt()和ParSeFloat()可以將其他類型轉(zhuǎn)化為數(shù)字類型,如果轉(zhuǎn)化不成功則返回NaN(NotaNumber)。String:這是一個唯一沒有大小限制的原始類型,其他類型可以通過toString()轉(zhuǎn)化為String類型,值得一提的是數(shù)字轉(zhuǎn)化為String類型可以加入2.8.16作為參數(shù)已輸出二進(jìn)制,八進(jìn)制和十六進(jìn)制的字符串。下面我們來看一下ObjeCt類型,通過Varobj=newObjeCt();可以申明一個對象。同.NET中的ObjeCt一樣,它是所有類的基類。它具有兩個屬性:ConStrUctor(相當(dāng)于.NET中的構(gòu)造函數(shù))建議一個對象函數(shù)引用,對于ObjeCt類而言,該引用指向本地ObjeCt()方法。Prototype對象里prototype對象的一個引用值,通過這個屬性可以反射每個對象中的prototype擴(kuò)展的屬性和方法,在AAjax中也是利用這個屬性類擴(kuò)展和反射類的。hasOWnProperty(Property)—判斷property屬性是否存在于對象中,property數(shù)據(jù)類型為string;isPrototypeOf(object)—判斷一個對象是否是另一對象的prototype;propertyIsEnumerable(property)—判斷所給出的屬性能否使用for語句列舉出來;toString()—返回對象的原始類型String;valueOf()—返回對象合適的原始值,對于多數(shù)類而言,返回的值和toString()相同。這些就是原始ObjeCt對象的方法,在其他類中這些方法以同樣被繼承。在Asp.NETAjaX中微軟為了將整個類庫擴(kuò)展的更適合.NET的開發(fā)人員,在原始的ObjeCt對象中擴(kuò)展了兩個方法:ObjeCt.getType=funCtion(b){vara=b.ConstruCtor;returna};ObjeCt.getTypeName=funCtion(a){returnObjeCt.getType(a).getName()};從上面我們可以看到,Object.getType(type)這個靜態(tài)方法可以獲取一個類的對象,而ObjeCt.getTypeName(type)通過調(diào)用[prototype]Type.getName()而獲取類的名(包括命名空間)。這沒有什么好說的,下面來看一下測試:<div>//defineaclass;NExplus.ObjectTest=function(name){this._name=name;}NExplus.ObjectTtotype.getName=function(){return(this._name===undefined)?null:this._name;}NExplus.ObjectTtotype.setName=function(name){this._name=name;}//registerclass;NExplus.TestObject=function(){document.write(a.getName());document.write(a.getName());}//run;NExplus.TestObject();</script></div>運(yùn)行結(jié)果:Testissuccess?Success!NExplus.ObjectTest這個比較簡單,微軟只是為了和.NET框架更接近而擴(kuò)展的ObjeCt類,我覺得這兩個在開發(fā)過程中應(yīng)該很少用到吧,上面的測試順便測試一下屬性J。我很想知道有沒有那個好心人翻譯了ECMASCript的規(guī)范文檔,看英文真
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五版環(huán)保物流綠色包裝運(yùn)輸合同規(guī)范3篇
- 二零二五版?zhèn)€人房產(chǎn)抵押貸款債權(quán)轉(zhuǎn)讓合同3篇
- 二零二五版財(cái)務(wù)會計(jì)崗位聘用合同9篇
- 二零二五版智能家居股份制合作合同范本3篇
- 二零二五年度鋼結(jié)構(gòu)工程鋼筋加工與配送合同范本3篇
- 二零二五版工業(yè)4.0工廠生產(chǎn)承包服務(wù)合同模板3篇
- 二零二五年房產(chǎn)共有權(quán)份額轉(zhuǎn)讓產(chǎn)權(quán)買賣合同范本含份額調(diào)整方案3篇
- 二零二五版?zhèn)€人承包公司物流運(yùn)輸合作合同書6篇
- 二零二五版安徽省勞動合同解除爭議調(diào)解服務(wù)合同2篇
- 二零二五年度能源股權(quán)轉(zhuǎn)讓居間服務(wù)合同范本2篇
- 大型活動聯(lián)合承辦協(xié)議
- 工程項(xiàng)目采購與供應(yīng)鏈管理研究
- 2024年吉林高考語文試題及答案 (2) - 副本
- 拆除電纜線施工方案
- 搭竹架合同范本
- Neo4j介紹及實(shí)現(xiàn)原理
- 焊接材料-DIN-8555-標(biāo)準(zhǔn)
- 工程索賠真實(shí)案例范本
- 重癥醫(yī)學(xué)科運(yùn)用PDCA循環(huán)降低ICU失禁性皮炎發(fā)生率品管圈QCC持續(xù)質(zhì)量改進(jìn)成果匯報
- 個人股權(quán)證明書
- 醫(yī)院運(yùn)送工作介紹
評論
0/150
提交評論