我正试图了解这种名为 JavaScript 的黑魔法——而且,我必须承认,我对此感到非常兴奋。我一直在看代码示例,主要来自“easeljs”,因为这是我主要使用的。而且我有点迷茫。。
prototype
我(想我)理解使用作为变量的函数或属性class
与使用“实例”变量之间的区别this.someProp
(是的,我知道 JavaScript 中没有类。)
我看过的代码,正在用作我自己的代码、declare
prototype
变量的模板,然后用这个来引用它们,即
在构造函数中:
this.name = name;
然后声明:
Object.prototype.name;
然后,
this.name = "Freddy";
这是在用“new”调用的函数中,所以在这种情况下,据我所知,this
指的是当前对象。令我困惑的是原型声明在做什么,为什么我们将它用于实例变量?
澄清:在下面的代码中,我看不到半径的原型声明正在实现什么:
(function(){
// constructor
function MyCircle(radius){
this.radius = radius;
}
MyCircle.prototype.radius;
this.area = function(){
return 3.14*this.radius*this.radius;
};
window.MyCircle = MyCircle;
}());