有几种方法可以在 javascript 中获得类类行为,最常见的似乎是基于原型的,如下所示:
function Vector(x, y, x) {
this.x = x;
this.y = y;
this.z = z;
return this;
}
Vector.prototype.length = function () { return Math.sqrt(this.x * this.x ... ); }
和基于闭包的方法类似于
function Vector(x, y, z) {
this.length = function() { return Math.sqrt(x * x + ...); }
}
由于各种原因,后者更快,但我已经看到(并且我经常编写)原型版本并且很好奇其他人在做什么。