class Vector {
constructor(x,y) {
this.x = x || 0;
this.y = y || 0;
}
add = function (c) {
return new Vector(this.x + c.x,this.y+c.y)
};
}
我希望能够执行新Vector(4,4)+新Vector(0,2)-> Vector(4,6)。 我尝试过更改多个部分并进行查看,但我发现最接近的是旧的ES5方法。
答案 0 :(得分:1)
其他答案已经指出,您不能在javascript中重载运算符,因此我们可以做的就是查看您正在使用的add方法。
似乎没有用,因为您没有将第二个Vector中的值添加到结果中。
您可以这样尝试:
add = function (otherVector) {
return new Vector(this.x + otherVector.x, this.y + otherVector.y)
};