JavaScript 对象成员的可见性说明_Javascript教程-查字典教程网
JavaScript 对象成员的可见性说明
JavaScript 对象成员的可见性说明
发布时间:2016-12-30 来源:查字典编辑
摘要:JavaScript对象构造的可见性定义可以分为以下几种:1,私有属性(privateproperties)通过var关键字定义对象构造中变...

JavaScript对象构造的可见性定义可以分为以下几种:

1,私有属性(private properties)

通过var关键字定义对象构造中变量的作用域,该变量只能在对象构造方法的作用域内被访问。如:

复制代码 代码如下:

function VariableTest()

{

var myVariable;//private

}

var vt = new VariableTest();

vt.myVariable;//这里会出现undefined异常

2,私有方法(private methods)

与私有属性类似,只能在对象构造方法作用域内被访问。如:

复制代码 代码如下:

function MethodTest()

{

var myMethod = function()//private

{

alert("private method");

}

this.invoke = function()

{

//能够访问到myMethod

myMehtod();

}

}

var mt = new MethodTest();

mt.myMethod();//错误。使用trycatch的话,可捕获“对象不支持此属性或方法”异常

mt.invoke();

3,公共属性(public properties)

有两种定义公共属性的途径:

(1)通过this关键字来定义。如:

复制代码 代码如下:

function PrivilegedVariable()

{

this.variable = "privileged variable";

}

var pv = new PrivilegedVariable();

pv.variable;//返回 "privileged variable"

(2)通过构造方法的原型来定义。如:

复制代码 代码如下:

function PublicVariable(){}

PublicVariable.prototype.variable = "public variable";

var pv = new PublicVariable();

pv.variable;//返回"public variable"

4,公共方法(public methods)

同理,有两种定义公共方法的途径。

(1)通过this关键字来定义。(2)通过构造方法的原型来定义。

这里省略。。。。。。。。。。。

5,静态属性(static properties)

直接为对象构造方法添加的属性,不能被对象实例访问,只能供构造方法自身使用。如:

复制代码 代码如下:

function StaticVariable(){}

StaticVariable.variable = "static variable";

var sv = new StaticVariable();

sv.variable;//返回"undefined"

StaticVariable.prototype.variable;//返回"undefined"

StaticVariable.variable;//返回"static variable"

6,静态方法(static methods)

直接为对象构造方法添加的方法,不能被对象实例访问,只能供构造方法自身使用。

代码省略。。。。。。。。

相关阅读
推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
  • 大家都在看
  • 小编推荐
  • 猜你喜欢
  • 最新Javascript教程学习
    热门Javascript教程学习
    编程开发子分类