JavaScript构造函数 [英] JavaScript constructors
问题描述
我不完全理解如何应用构造函数对这个对象创建方法:
var MyObject = {
...
};
我知道你可以这样做:
var MyObject = new Object();
MyObject.prototype.constructor = function(props)
{
...
}
或...
function MyObject(prop1,prop2)
{
this.prop1 = prop1;
...
}
我可以这样做吗? p>
var MyObject = {
MyObject:function(prop1,prop2)
{
...
}
}
不,你不能,只是创建一个(静态)方法MyObject - MyObject.MyObject
。在JavaScript中,构造函数是类。类方法和属性在构造函数中使用 this。
或使用 MyClass.prototype。添加到原型(在构造函数之外)。 / code>。您可以将JavaScript中的对象视为静态类。
I do not understand quite completely how to apply constructors on this object creation method:
var MyObject = {
...
};
I know that you can do:
var MyObject = new Object();
MyObject.prototype.constructor = function(props)
{
...
}
or...
function MyObject(prop1, prop2)
{
this.prop1 = prop1;
...
}
Can I do something like this?
var MyObject = {
MyObject: function(prop1, prop2)
{
...
}
}
No, you can't, that would simply create a (static) method on MyObject -- MyObject.MyObject
. In JavaScript, a constructor is the class. Class methods and properties are created either inside the constructor using this.
or by adding to the prototype (outside of the constructor) using MyClass.prototype.
. You can think of "objects" in JavaScript as static classes.
这篇关于JavaScript构造函数的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!