【发布时间】:2018-04-23 19:13:57
【问题描述】:
在这里刷新我的 Javascript 知识,以便我知道这是该语言的基础知识。在我的示例中,我可以看到正在发生的事情,但我无法说出原因。我还添加了 Chrome 控制台分解对象视图。
问题:
在
的情况下,我声明 MyMethod1 和 MyMethod2 的方式与可访问性有什么区别?a) Example.MyExample.Person 对象和
b) 代表 p,Example.MyExample.Person 的一个实例?
代码:
Example = {}
Example.MyExample = {}
Example.MyExample.Person = function(name, age, gender)
{
this.name = name;
this.age = age;
this.gender = gender;
this.MyMethod1 = function(){alert("My Method 1");}
};
Example.MyExample.Person.MyMethod2 = function(){alert("My Method 2");}
var p = new Example.MyExample.Person("tom", 78, "m");
p.MyMethod1(); // My Method 1
p.MyMethod2(); // p.MyMethod2 is not a function
Example.MyExample.Person.MyMethod1; // Example.MyExample.Person.MyMethod1 is not a function
Example.MyExample.Person.MyMethod2(); // My Method 2
Chrome 分解对象视图:
【问题讨论】:
标签: javascript oop methods