zoukankan
html css js c++ java
使用 this 指针和 prototype 实现 js 的 OO 时的一个区别
利用 this 实现的公共方法中可以访问类的私有成员(用 var 声明的变量),私有方法(用 function 直接定义的方法);
利用原型扩展实现的方法中,无法调用私有成员和变量。
例子如下所示(把其中注释掉的两行恢复就可以看到区别):
function
T(name) {
this
.Name
=
name;
var
x
=
5
;
function
privateFunc() {
alert('
in
private method:
do
sometheing');
}
this
.PublicFunc
=
function
() {
//
可以调用私有方法,访问私有成员变量。
privateFunc();
alert('x
=
'
+
x);
alert('
in
public method:
do
something
else
.');
}
}
//
var t = new T('t1');
//
t.PublicFunc();
T.prototype.PublicFunc2
=
function
() {
alert('
in
public method
2
.');
//
下面两行都会出错。在利用 prototype 扩展的方法里无法调用对象的私有方法,也访问不到通过 var 定义的私有成员。
//
alert(x);
//
privateFunc();
}
var
t2
=
new
T('t2');
t2.PublicFunc();
t2.PublicFunc2();
查看全文
相关阅读:
N46期第一周作业
备份MBR分区表,并破坏后修复
预习作业(五)作业
预习作业(四)作业
通过v$sqlarea,v$sql查询最占用资源的查询
ORACLE快速彻底Kill掉的会话
HTML5中修改表单验证默认提示语句
input正则 常用正则(备用)
使用扫描枪扫描条码时字符识别写入缓慢问题(针对element-ui的el-input)优化
JQuery经验汇总
原文地址:https://www.cnblogs.com/RChen/p/111230.html
最新文章
记一次 解决 vue 兼容ie11 的问题
git 解决 error: failed to push some refs to 'https://github.com/xxxx.git'
2020软件工程作业——团队04
2020软件工程作业——03团队
2020软件工程作业05
2020软件工程作业04
2020软件工程作业03
2020软件工程个人作业06————软件工程实践总结作业
2020软件工程作业————05
2020软件工程作业04
热门文章
软件工程作业03
疑问汇总
2020软件工程作业02
2020软件工程作业01
第7周作业作业
第五周作业
马哥教育第一阶段考试
第四周作业
第三周作业
第二周作业作业
Copyright © 2011-2022 走看看