【发布时间】:2016-11-01 01:55:30
【问题描述】:
我正在学习并尝试深入了解 JavaScript 对象。我通过下面的例子学习了Object prototype。
var MyObj = function(){
this.Name = "Stackoverflow";
}
MyObj.prototype.prop = "OK";
var instance = new MyObj();
instance.prop = "OK";
console.log(instance.hasOwnProperty("Name")); //true
console.log(Object.getOwnPropertyNames(instance)); //[ 'Name', 'prop' ]
在上面的例子中,instance 对象不能访问getOwnPropertyNames 的Object。因为getOwnPropertyNames 函数不是Object 原型的成员。在此之后,当我编写自己的对象时,例如上面的Object,例如
var MyDream = function(){}
MyDream.prototype.canAccessThisMethod = function(x){};
var instanceSample = new MyDream();
instanceSample.canAccessThisMethod("blabla"); //because of prototype
MyDream.method(blabla); // didn't work.
如何让MyDream.method 在这个例子中工作?
【问题讨论】:
-
欢迎来到 StackOverflow。首先有几件事,你想学习
prototypes,这很好,反正在这里给function添加方法没有任何意义。但你会在途中绕过这些事情。
标签: javascript prototype javascript-objects