作者BBSealion (海獅)
看板Ajax
標題Re: [問題] javascript 的 private 屬性
時間Fri Feb 22 17:56:52 2013
這樣的做法如上篇網站中提到的是privileged function
確實能拿到private member
但通常不會想法function直接寫在Class裡面而是宣告名稱後丟出去寫如下
function ThisIsMyClass() {
var secret = 0;
this.methodAdd = ThisIsMyClass.prototype.methodAdd;
}
ThisIsMyClass.prototype.methodAdd = function(){
this.secret += 1; <--- 會找不到
}
我前面一開始就講getter/setter可能真的讓人誤會了抱歉啊~
另一位說的加底線或許是個好做法
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 220.133.61.45
1F:→ s25g5d4:這串文章會讓我想到JavaScript Patterns 好書 正在看 02/22 17:58
2F:→ BBSealion:哈我回的是上上篇了,底線那個OK! 感謝兩位XD 02/22 17:58
3F:推 mrbigmouth:推JavaScript Patterns好書 02/22 17:59
4F:→ BBSealion:不加this.fun = ClassName.prototype.fun 好像也行 02/22 18:08
5F:→ BBSealion:不過就無法看Class知道我有哪些function了 02/22 18:08
6F:→ BBSealion:一般會去加這個嗎? (臨時想到的問題) 02/22 18:08
7F:→ mrbigmouth:不會這樣寫吧 想條列Class有哪些method請寫好註解 02/22 19:41
8F:→ mrbigmouth:然後配合一些autodoc軟體... 02/22 19:42
9F:推 matrixki:module pattern 和 closure pattern好用 02/24 17:57
10F:→ xnight:可以試試看Google Closure Compiler, 如果用了@private, 03/12 12:30
11F:→ xnight:印象中compile出來的codes, 那些function就會是private. 03/12 12:32