誰動了我的代碼
抽象即是空,空即是抽象。
posts(43)
comments(24)
trackbacks(0)
BlogJava
聯系
聚合
管理
News
所有文章版權歸我所有,轉載請注明出處,謝謝!
常用鏈接
我的隨筆
我的評論
我的參與
最新評論
留言簿
給我留言
查看公開留言
查看私人留言
隨筆分類
Android開發(5)
C/C++(1)
DataBase(3)
Java(16)
JavaScript(14)
WEB前端(1)
編程雜項(2)
網絡(1)
隨筆檔案
2016年5月 (1)
2011年2月 (1)
2010年6月 (3)
2010年5月 (1)
2009年12月 (2)
2009年11月 (1)
2009年10月 (2)
2009年6月 (2)
2009年5月 (1)
2009年4月 (2)
2009年3月 (4)
2009年2月 (1)
2009年1月 (1)
2008年12月 (1)
2008年11月 (1)
2008年10月 (4)
2008年9月 (2)
2008年5月 (5)
2008年3月 (3)
2007年12月 (2)
2007年10月 (1)
2007年9月 (2)
2007年5月 (1)
搜索
最新評論
1.?re: Android之ImageView載入網絡上的圖片
222222222222222222222
--2222222222222222222222222222
2.?re: Log4j自帶Log Viewer的用法
執行你的根本不行,亂錯帖子就在這亂貼,tmd
--asdf
3.?re: Android之使用私有存儲
getDir方法創建的文件,會有個app_前綴,請問這怎么去掉呢?
--就是寶寶
4.?re: Android通用事件造成的生命周期變化情況
我相信以后Android將成為越來越多設備的OS,不光是手持上網設置,冰箱、洗衣機都有可能采用Android。
--淘寶網女裝春裝新款
5.?re: Android通用事件造成的生命周期變化情況
不錯
--歌瑞爾內衣
閱讀排行榜
評論排行榜
View Post
面向對象的JavaScript (一、對象基礎,使用函數來模擬類)
通過一個例子可以很直觀的表述本主題,所以沒有任何其他的說明文字,請看代碼吧。
1
function
Person(name, age)
{
2
3
//
私有變量(private variables)
4
var
myName
=
name;
5
var
myAge
=
age;
6
7
//
公共屬性(public properties)
8
this
.name
=
myName;
9
this
.age
=
myAge;
10
11
//
私有函數(private functions)
12
function
getMyName()
{
13
return
myName;
14
}
;
15
16
function
getName()
{
17
return
name;
18
}
;
19
20
var
getMyAge
=
function
()
{
21
return
myAge;
22
}
;
23
24
var
getAge
=
function
()
{
25
return
age;
26
}
;
27
28
//
特權方法(privileged methods)
29
this
.getName
=
function
()
{
30
return
this
.name;
31
//
return myName; 可以訪問私有變量
32
//
return name; 可以訪問構造函數參數(其參數本質也是私有變量)
33
//
return getMyName(); 可以訪問私有函數
34
//
return getName(); 可以訪問私有函數
35
}
;
36
37
this
.getAge
=
function
()
{
38
return
getAge();
39
}
;
40
41
this
.getRealAge
=
function
()
{
42
return
this
.age;
43
}
;
44
}
45
46
//
公共方法(public methods)
47
Person.prototype.acceptName
=
function
(param)
{
48
this
.name
=
param;
49
//
name = param; 公共方法不能訪問私有變量
50
//
myName = param; 公共方法不能訪問私有變量
51
}
;
52
53
//
原型屬性(prototype properties)
54
Person.prototype.legs
=
2
;
55
56
//
靜態屬性(static properties)
57
//
整個類只有一個靜態屬性,各個對象共享同一個靜態屬性值
58
Person.arms
=
2
;
59
60
Person.getArms
=
function
()
{
61
return
Person.arms;
62
//
return this.arms; 可以使用this來指代Person對象本身
63
}
;
64
65
/**/
/*
66
Person是一個邏輯上的類,他的本質是一個Function,在JavaScript中類是由Function來模擬的,所以Person還是一個Function的實例。而arms和getArms方法是一個Function對象實例上的屬性和方法,是Person對象所特有的,所以本例可以使用Person.arms來引用,同時在getArms方法中,可以使用this.arms來引用,因為getArms是Person對象上的方法,在該方法內部this指代Person對象自身。
67
*/
68
alert(Person.getArms());
69
70
var
pa
=
new
Person(
"
Teddy
"
,
25
);
71
72
//
alert(pa.myName); 不能訪問私有變量
73
74
alert(pa.name);
75
76
alert(pa.getAge());
77
78
pa.acceptName(
"
Born
"
);
79
80
alert(pa.getName());
81
82
var
pb
=
new
Person(
"
John
"
,
18
);
83
84
//
運行時動態加入方法
85
Person.prototype.acceptAge
=
function
(param)
{
86
this
.age
=
param;
87
}
;
88
89
//
pb對象也可以調用動態添加的方法
90
pb.acceptAge(
30
);
91
92
alert(pb.getAge());
93
94
alert(pb.getRealAge());
95
96
//
運行時覆蓋已定義方法
97
Person.prototype.acceptName
=
function
(param)
{
98
return
param;
99
}
;
100
101
//
所有已創建對象都自動繼承被覆蓋的方法
102
alert(pa.acceptName(
"
Black
"
));
103
104
alert(pa.getName());
105
106
alert(pa.legs);
107
108
//
運行時改變原型屬性值
109
Person.prototype.legs
=
4
;
110
111
//
所有已創建對象都自動繼承被改變的原型屬性值
112
alert(pb.legs);
113
114
//
運行時將原型屬性改為公共方法
115
Person.prototype.legs
=
function
()
{
116
return
4
;
117
}
;
118
119
//
所有已創建對象都自動繼承原型屬性到公共方法的改變
120
alert(pa.legs());
posted on 2008-09-03 19:09
Eric Song
閱讀(1291)
評論(1)
編輯
收藏
所屬分類:
JavaScript
View Comments
#
re: 面向對象的JavaScript (一、對象基礎,使用函數來模擬類)
回復
更多評論
不錯,等待下一篇
2008-09-04 11:28 |
HiMagic!
新用戶注冊
刷新評論列表
只有注冊用戶
登錄
后才能發表評論。
網站導航:
博客園
IT新聞
Chat2DB
C++博客
博問
管理
相關文章:
關于樣式表對象style與currentStyle的區別
關于JavaScript的cloneNode方法對于節點上的事件clone問題的研究。
參考Prototype的Class.create寫了一個類似的實現,但是不是Ruby like OOP,使用上更像Java。
對JavaScript的變量作用域的理解
IE document compatMode
JavaScript對form及form中的引用。
JavaScript注意事項(不定期更新)
在定義一個js類的時候,為什么要設置該類的prototype屬性為它所要繼承的類的實例對象
JavaScript 類型轉換注意事項
面向對象的JavaScript(二,TSS上的一篇文章,先借鑒一下)
Powered by:
BlogJava
Copyright © Eric Song
主站蜘蛛池模板:
女人裸身j部免费视频无遮挡
|
91在线精品亚洲一区二区
|
亚洲一区二区三区播放在线
|
国产一级淫片a免费播放口
|
一本久久a久久精品亚洲
|
成人免费午夜在线观看
|
亚洲午夜电影在线观看高清
|
麻花传媒剧在线mv免费观看
|
亚洲精品第一国产综合精品99
|
亚洲国产精品成人午夜在线观看
|
免费看无码自慰一区二区
|
亚洲av片在线观看
|
亚洲电影免费观看
|
亚洲娇小性色xxxx
|
国产精品久免费的黄网站
|
香港经典a毛片免费观看看
|
亚洲国产精品成人
|
国产激情久久久久影院老熟女免费
|
黄页网站在线免费观看
|
成年女人毛片免费观看97
|
亚洲国产精华液2020
|
午夜国产羞羞视频免费网站
|
亚洲美女激情视频
|
2020久久精品国产免费
|
亚洲s码欧洲m码吹潮
|
亚洲成a人无码av波多野按摩
|
国产在线精品一区免费香蕉
|
老司机亚洲精品影院
|
手机在线毛片免费播放
|
国产亚洲美女精品久久久2020
|
亚洲国产精品无码久久久蜜芽
|
日本在线免费观看
|
亚洲人成网站日本片
|
国产女高清在线看免费观看
|
国产免费牲交视频免费播放
|
亚洲天天做日日做天天欢毛片
|
成年男女免费视频网站
|
国产va免费精品
|
91亚洲国产成人久久精品网址
|
国产美女无遮挡免费视频
|
国产亚洲人成在线影院
|