问题: 如何使用Triangle Class扩展Point(超(?))并组成一个如下所示的对象:
// "name":"Thomas The Triangle",
// "points": [
// {age: "2015-05-28T06:23:26.160Z", x: 1, y: 1 },
// {age: "2015-05-28T06:23:26.161Z", x: 0, y: 3 },
// {age: "2015-05-28T06:23:26.164Z", x: 2, y: 3 }
// ]
JS:
class Point {
constructor(x, y){
this.name = "Point"
this.age = new Date();
this.x = x;
this.y = y;
}
}
class Triangle extends Point{
constructor(coords, name) {
super(coords[0][0], coords[0][1]); //this line is best I could do but not correct
this.name = name
}
}
let t1 = new Triangle([[1,1],[0,3],[2,3]], 'Thomas The Triangle')
console.log(t1);
**
**
答案 0 :(得分:8)
Triangle
看起来不需要扩展Point
。它将多个Point对象组合成点数组。像这样:
class Triangle {
constructor(coords, name) {
this.points = coords.map((point) => {
return new Point(...point);
});
this.name = name;
}
}