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();
查看全文
相关阅读:
Jquery入门
微服务
数组
流程控制
GO的整型
Go的巧记
变量和常量
Golang
股票入市指南
linux 命令行操作
原文地址:https://www.cnblogs.com/RChen/p/111230.html
最新文章
SQL简介
文件合并cat and paste
13,多线程-生产者消费者问题2
12,多线程-生产者消费者问题
11,多线程示例代码
10,object类
9,多态扩展实例(数据库的操作)
8,多态
6,静态代码块,对象初始化过程,
5,帮助文档(说明文档/API文档)的制作
热门文章
4,main
3,static
08springMVC拦截器
06springMVC数据验证
Jquery书写ajax
Jquery中的事件
jQuery中的动画
使用jQuery操作DOM
jquery选择器
Jquery语法基础
Copyright © 2011-2022 走看看