下のコードで渡された辺(数)で形状の型を調べることは、最初の添え字、三角形だけに行きます。アレイの側面のプロパティに?私はfilter
,forEach
、およびmap
を使って試し、ウサギの穴に通しました。助けを前にありがとう。形の数を比較するために辺の数を比較するのに苦労します
var Shape = function(sides) {
this.sides = sides;
if (this.sides < 3 || typeof(this.sides) !== 'number'){
this.sides = null;
}
};
Shape.prototype.getType = function(sides){
var shapes = [{type: "triangle", sides: 3}, {type: "quadrilateral", sides: 4}, {type: "pentagon", sides: 5}, {type: "hexagon", sides:6}, {type: "heptagon", sides: 7}, {type: "octagon", sides: 8}, {type: "nonagon", sides: 9}, {type: "decagon", sides: 10}];
for (var i = 0; i < shapes.length; i++){
console.log(shapes[i].sides);
var sideExists = shapes.indexOf(shapes[i].sides) > -1;
if (sides === sideExists){
return shapes[i].type;
}else{
return 'Could not determine type';
}
}
};
私はあなたがそのような 'indexOf'を使用することができるとは思いません。 – Redu