国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

Javascript 面向?qū)ο?對象(Object)

2019-11-21 00:30:32
字體:
供稿:網(wǎng)友
javascript中的對象創(chuàng)建聲明:
var obj = {}; 或者 var obj = new Object(); 
為對象加入屬性,方法:
//=====第一種寫法====================================
obj.name = '小明'; //為對象加屬性
obj.updateName = function(name){//為對象定義updateName方法
this.name = name;
}
alert(obj.name);
obj.updateName("小強"); //調(diào)用updateName修改obj對象的name屬性值
alert(obj['name']);
第一次顯示結(jié)果為:小明
第二次顯示結(jié)果為:小強
//=====第二種寫法====================================
obj['name'] = '張三'; //為對象加屬性
obj['updateName'] = function(name){//為對象定義updateName方法
obj['name'] =name;
}; 
alert(obj.name);
obj.updateName('李四'); //調(diào)用updateName修改obj對象的name屬性值
alert(obj['name']);
第一次顯示結(jié)果為:張三
第二次顯示結(jié)果為:李四
復(fù)制代碼 代碼如下:

//=====第三種寫法====================================
var obj = {
name: '王五', //為對象加屬性
updateName: function(name){//為對象定義updateName方法
this.name = name;   
}
};
alert(obj .name);
obj.updateName("趙六"); //調(diào)用updateName修改obj對象的name屬性值
alert(obj .name);

第一次顯示結(jié)果為:王五
第二次顯示結(jié)果為:趙六
//=====分析=====================================
第一種寫法是最普通的對象寫法,因為javascript是動態(tài)語言,與Java和.Net不同,
在程序運行并創(chuàng)建對象后,還可以對該對象的內(nèi)部結(jié)構(gòu)進行修改,
比如添加屬性和方法(java和.net中的反射機制做不到這點)。
(a): var obj = {} || new Object();
(b):obj.name = "張三";
(c):obj.updateName = function(name){ this.name = name};
當程序執(zhí)行(a) 后,便創(chuàng)建了一個空對象(不包含任何方法和屬性)obj,
當程序執(zhí)行(b) 后,改變了obj的內(nèi)部結(jié)構(gòu),加了一個屬性name,
當程序執(zhí)行(c) 后,改變了obj的內(nèi)部結(jié)構(gòu),加了一個方法updateName ,
而這都是在運行的時候完成的動作
第二種寫法像數(shù)組,但絕不是數(shù)組,區(qū)分是不是數(shù)組可以如此判斷:
復(fù)制代碼 代碼如下:

if(typeof(obj.length) == "undefined") {
alert("obj不是數(shù)組,數(shù)組都有l(wèi)ength屬性!");
}else{
alert("obj是數(shù)組!");
}

第二種寫法更像一種數(shù)據(jù)結(jié)構(gòu):map ,如:obj[key] = value;
key是字符串,value可以是任何類型,變量,對象,函數(shù)等。
可以通過這種方式遍歷對象內(nèi)部結(jié)構(gòu):
復(fù)制代碼 代碼如下:

for(var key in obj)
{
alert(key);
var value = obj[key];
alert(value);
}

通過alert可以顯示出你所定義的內(nèi)容。
第三種寫法一看就是map的內(nèi)部結(jié)構(gòu)了,一個對象,內(nèi)部完全用key : value鍵值對方式表示
JSON對象也是這種結(jié)構(gòu),只要對map或者JSON對象有所熟悉的就很容易理解了。
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 芦溪县| 洮南市| 尚志市| 永新县| 景东| 册亨县| 行唐县| 漳州市| 南充市| 武安市| 南昌县| 承德市| 灌南县| 全南县| 横峰县| 通江县| 靖安县| 通州区| 子长县| 葵青区| 罗甸县| 慈溪市| 郁南县| 方正县| 原阳县| 丹凤县| 勃利县| 黄梅县| 咸宁市| 大丰市| 中牟县| 黄梅县| 金平| 鄂温| 合阳县| 阿拉尔市| 通州区| 融水| 福清市| 景洪市| 呼和浩特市|