我想你想要这样的东西:
function Container(x, y, z){
this.x = x;
this.y = y;
this.z = z;
this.sumUp = function addUp(x, y, z){
alert(this.x + this.y + this.z);
};
}
container_instance = new Container(1, 2, 3);
container_instance.sumUp();
但我建议:
function Container(x, y, z){
this.x = x;
this.y = y;
this.z = z;
}
Container.prototype.sumUp = function addUp(x, y, z){
alert(this.x + this.y + this.z);
};
container_instance = new Container(1, 2, 3);
container_instance.sumUp();
这就是它的工作原理(简短):
在 JavaScript 中objects,它们就像哈希:
var obj = {
'a': 1,
'b': 2,
'c': 3
};
您可以通过键获取或设置值:
alert(obj.a); // alerts 1
alert(obj['a']); // same thing
obj['c'] = 4;
在您的情况下Container,函数将构建您的对象。当你这样做时new Container(1, 2, 3);,它会创建一个空对象,并在对象的上下文中执行函数。