資源描述:
《再踐javascript對(duì)象、原型、屬性、構(gòu)造函數(shù)、擴(kuò)展、json》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在應(yīng)用文檔-天天文庫(kù)。
1、再踐javascript對(duì)象、原型、屬性、構(gòu)造函數(shù)、擴(kuò)展、jsonjavascript中的對(duì)象有三種11、內(nèi)部對(duì)象12、基于類的對(duì)象13、基于原型的對(duì)象1javascript內(nèi)置對(duì)象上添加其它屬性或者方法1C#定義:構(gòu)造函數(shù)2javascript定義:構(gòu)造函數(shù)2函數(shù)定義2Function()構(gòu)造函數(shù)3函數(shù)直接量3Function()構(gòu)造函數(shù)和函數(shù)直接量差別4function定義構(gòu)造函數(shù)4javascript對(duì)象{}5javascrip原型(prototype)與屬性(property)5this.
2、特權(quán)(屬性和方法)、prototype.公有(屬性和方法)、function.(屬性和方法)6js面向?qū)ο笤O(shè)計(jì)用{}好還是function(){}好(構(gòu)造函數(shù))7javascript解析JSON7JSON建構(gòu)于兩種結(jié)構(gòu):7JSON具有以下這些形式:7JSON文件格式和JSON文件注釋7javascript和json.js一起使用的細(xì)節(jié)7對(duì)象{}與json轉(zhuǎn)換示例代碼json.js:8示例使用JSON.parse將字符串轉(zhuǎn)為json對(duì)象8示例使用JSON.stringify將json對(duì)象轉(zhuǎn)為字符串8
3、javascript中的對(duì)象有三種1、內(nèi)部對(duì)象如Array、Boolean、Data、Math、Number、Object、RegExp、String對(duì)象等這些對(duì)象系統(tǒng)給我們提供了各自的屬性與方法供調(diào)用。2、基于類的對(duì)象用類的方式實(shí)現(xiàn)對(duì)象的引用,這些類需要我們自己定義3、基于原型的對(duì)象提供有關(guān)如何使用javascript基于原型的對(duì)象模型的指南,并且提供指向特定信息的鏈接,這些信息描述基于原型的對(duì)象的自定義構(gòu)造函數(shù)和繼承。/*javascript內(nèi)置對(duì)象上添加其它屬性或者方法*/String.pr
4、ototype.good=function(){//自定義方法return"追加good方法";}String.prototype.bad="追加bad屬性";//自定義屬性varstr="";//定義一個(gè)字符串實(shí)例str,調(diào)用String對(duì)象追加的屬性和方法document.write(str.good());document.write(str.bad);自定義對(duì)象語(yǔ)法規(guī)則1、對(duì)象創(chuàng)建方式1)、對(duì)象初始化器方式格式:objectName={property1:value1,property2:
5、value2,…,propertyN:valueN}property是對(duì)象的屬性value則是對(duì)象的值,值可以是字符串、數(shù)字或?qū)ο笕咧皇纠a:varuser={name:"Sn",age:25};2)、構(gòu)造函數(shù)方式編寫一個(gè)構(gòu)造函數(shù),并通過(guò)new方式來(lái)創(chuàng)建對(duì)象,構(gòu)造函數(shù)本可以帶有構(gòu)造參數(shù)示例代碼:functionf(name,age){this.name=name;this.age=age;}varuse=newf();C#定義:構(gòu)造函數(shù)1、構(gòu)造函數(shù)的命名必須和類名完全相同;2、構(gòu)造函數(shù)的功能
6、主要用于在類的對(duì)象創(chuàng)建時(shí)定義初始化的狀態(tài),它沒(méi)有返回值,也不能用void來(lái)修飾;3、構(gòu)造函數(shù)不能被直接調(diào)用,必須通過(guò)new運(yùn)算符在創(chuàng)建對(duì)象時(shí)才會(huì)自動(dòng)調(diào)用,一般方法在程序執(zhí)行到它的時(shí)候被調(diào)用;4、當(dāng)定義一個(gè)類的時(shí)候,通常情況下都會(huì)顯示該類的構(gòu)造函數(shù),并在函數(shù)中指定初始化的工作也可省略;5、當(dāng)一個(gè)類只定義了私有(private)的構(gòu)造函數(shù),將無(wú)法通過(guò)new關(guān)鍵字來(lái)創(chuàng)建其對(duì)象(不可訪問(wèn),因?yàn)樗鼙Wo(hù)級(jí)別限制);當(dāng)一個(gè)類沒(méi)有定義任何構(gòu)造函數(shù),C#編譯器會(huì)為其自動(dòng)生成一個(gè)默認(rèn)的無(wú)參的構(gòu)造函數(shù);除非類是sta
7、tic類;javascript定義:構(gòu)造函數(shù)javascript中的構(gòu)造函數(shù)是允許有返回值的,但通常不設(shè)置返回值如果一個(gè)構(gòu)造函數(shù)有一個(gè)返回值,則返回的對(duì)象成為new表達(dá)式的值。在此情況下,作為this的對(duì)象將會(huì)被拋棄。構(gòu)造函數(shù)作用:使自己的對(duì)象多次復(fù)制,同時(shí)實(shí)例根據(jù)設(shè)置的訪問(wèn)等級(jí)可以訪問(wèn)其內(nèi)部的屬性和方法當(dāng)對(duì)象被實(shí)例化后,構(gòu)造函數(shù)會(huì)立即執(zhí)行它所包含的任何代碼/*函數(shù)定義函數(shù)是由這樣的方式進(jìn)行聲明的:關(guān)鍵字function、函數(shù)名、一組參數(shù),以及置于括號(hào)中的待執(zhí)行代碼。函數(shù)的構(gòu)造語(yǔ)法有這三種:1.f
8、unctionfunctionName(arg0,arg1,...argN){statements}//function語(yǔ)句2.varfunction_name=newFunction(arg1,arg2,...,argN,function_body);//Function()構(gòu)造函數(shù)3.varfunc=function(arg0,arg1,...argN){statements};//函數(shù)直接量示例代碼:*/functionfn(x){returnx*x};//1.functio