前面學(xué)習(xí)到j(luò)s使用對(duì)象的內(nèi)容。二對(duì)象的創(chuàng)建主要有下面3個(gè)方法的內(nèi)容:
(1)使用new關(guān)鍵字調(diào)用構(gòu)造器創(chuàng)建對(duì)象(不做過(guò)多解釋)
(2)使用Object直接創(chuàng)建對(duì)象
(3)使用JSON語(yǔ)法創(chuàng)建對(duì)象
var p1=new Person();//定義一個(gè)不傳遞任何參數(shù)的類二、使用Object直接創(chuàng)建對(duì)象
//創(chuàng)建一個(gè)不包含任何屬性和方法的類var myObj=new Object();由于js是動(dòng)態(tài)語(yǔ)言(java,c #則為靜態(tài)語(yǔ)言,對(duì)象一旦創(chuàng)建,該對(duì)象所屬的類的屬性和方法將不能改變。),js可以通過(guò)動(dòng)態(tài)增加屬性和方法//創(chuàng)建一個(gè)空的對(duì)象var myObj=new Object();//增加name屬性myObj.name="xfcy";//創(chuàng)建方法方式1:myObj.info=function abc(){ ……}//創(chuàng)建方法方式2:(匿名)myObj.info=function abc(){ ……}//創(chuàng)建方法方式3:newmyObj.info=new function(……);//創(chuàng)建方法方式4:(注意)//創(chuàng)建一個(gè)函數(shù)function abc(){ ……}//將已有的函數(shù)添加到對(duì)象的方法中myObj.info=abc;注意:在方式4中,將已有的函數(shù)添加為對(duì)象方法時(shí),不能再函數(shù)名后添加括號(hào),即myObj.info=abc();是錯(cuò)誤的,一旦添加了括號(hào),將表示添加函數(shù),不再是將含稅本身賦給對(duì)象的方法,而是將函數(shù)的返回值賦給對(duì)象的屬性。三、使用JSON語(yǔ)法創(chuàng)建對(duì)象
json語(yǔ)言可以更簡(jiǎn)單的創(chuàng)建對(duì)象,避免了書寫函數(shù)和使用new關(guān)鍵字。var 對(duì)象名={key,value};例如:(1)json創(chuàng)建基本屬性var p={ name:"xfcy", gender:"male"};屬性和值之間使用(:)屬性之間使用(,)間隔。(2)json創(chuàng)建多種屬性person={ name:"xfcy", gender:"male", //指用json對(duì)象為其制定一個(gè)屬性 son:{ name:"sa", grade:1 }, //使用json語(yǔ)法為person直接分配一個(gè)方法 info:function(){ document.writeln("姓名:"+this.name+"性別:"+this.gender); }};(3)使用json創(chuàng)建數(shù)組 ①傳統(tǒng)創(chuàng)建數(shù)組的方法://方式1:創(chuàng)建對(duì)象時(shí)直接賦值 var a=new Array("xfcy","nono"); //方式2:創(chuàng)建數(shù)組后再賦值 var a=new Array(); //為數(shù)組元素賦值 a[0]="xfcy"; a[1]="zs";②使用json創(chuàng)建數(shù)組方法:arr=[value1 , value2 , …… ]例如:<script type="text/Javascript"> /定義一個(gè)對(duì)象 var person={ //定義一個(gè)間單屬性 name:"xfcy", //定義第二個(gè)簡(jiǎn)答屬性 age:29, //定義第三個(gè)屬性:數(shù)組 school:["小學(xué)","中學(xué)","大學(xué)"], //定義第四個(gè)屬性:對(duì)象數(shù)組 parents:[ { name:'father', age:60, address:"廣州" }, { name:"mother", age:58, address:"北京" } ] }; alert(person.parents);</script>在實(shí)際應(yīng)用中json使用較多,特別在和xml相比較下它的使用性也較高,特別是在跨平臺(tái)、跨語(yǔ)言地進(jìn)行數(shù)據(jù)交換時(shí),有時(shí)候?qū)幵高x擇json而不愿選擇xml。比如:person={ name:"xfcy", gender:"male", age:29}轉(zhuǎn)換為xml為<person> <name>xfcy</name> <gender>male</gender> <age>29</age></person>注:以上的總結(jié)僅是個(gè)人的學(xué)習(xí)。如果有錯(cuò)誤,請(qǐng)告知!
新聞熱點(diǎn)
疑難解答
圖片精選