特权方法是用 this 在构造器中分配的。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
|
service 就是一个特权方法。前三次调用会返回'abc'。之后 ,它会返回 null。service调用的私有的 dec 方法,而 dec又访问了私有的 secret变量。service对其它的对象和方法是可见的,但不能直接访问私有成员。
闭包
这种公共、私有和特权成员的模式是可行的原因是由于JavaScript有 closure闭包。这个意味着一个内部的函数总是可以访问这个函数外部的变量和参数,甚至在外部的函数返回之后。这是这个语言的一个极其强大的特性。目前没有哪本关于JavaScript编程的书展示了如何发掘这个特性。大多数都没有提到。
私有和特权成员只能在对象构造的时候生成。公共成员可以在任意时刻添加。
模式
公共(Public)
1 2 3 4 |
|
私有(Private)
1 2 3 4 5 |
|
注意,实际上函数语句
1 |
|
是以下语句的缩写,两者相同:
1 |
|
特权(Privileged)
1 2 3 |
|
【推荐学习:javascript高级教程】
以上就是Javascript中什么是私有成员的详细内容,更多文章请关注木庄网络博客!
相关阅读 >>
javascript中判断变量是否为数字的3种方法(附代码)
javascript函数前面加!、+、-、~, ;符号的意义介绍
更多相关阅读请进入《javascript》频道 >>

Vue.js 设计与实现 基于Vue.js 3 深入解析Vue.js 设计细节
本书对 Vue.js 3 技术细节的分析非常可靠,对于需要深入理解 Vue.js 3 的用户会有很大的帮助。——尤雨溪,Vue.js作者