我使用 dojo 1.8 作为 javascript 库。我正在尝试为我的一个项目创建一个小的 Vector 类。
我创建了一个函数 clone 来克隆向量对象。这是我的课“td/Vector”
define([
'dojo/_base/declare',
'td/Vector'
], function(declare, Vector) {
return declare(null, {
x: null,
y: null,
constructor: function(x, y) {
this.x = x;
this.y = y;
},
clone: function() {
return new Vector(this.x, this.y);
},
length: function() {
return Math.sqrt((this.x * this.x) + (this.y * this.y));
},
normalize: function() {
var length = this.length();
this.x = this.x / length;
this.y = this.y / length;
},
distance: function(target) {
return new Vector(target.x - this.x, target.y - this.y);
}
});
});
现在我的问题:
变量“Vector”是一个空对象。
那么我该怎么做这样的事情。JavaScript中是否存在PHP中的“self”之类的东西?在类本身中创建新的 self 实例的正确方法是什么?