在以下代碼中,會引發第012行上的TypeError: string is not a function
var myColour = new colour(255,255,255);
。任何人都可以看到代碼有什麼問題。非常感謝。TypeError:字符串不是函數
var bodies = [];
var orbits = [];
var colours = [
new colour(45, 45, 45),
new colour(255, 0, 0),
new colour(0, 157, 255),
new colour(77, 250, 81),
new colour(255, 247, 0)
];
function colour(red, green, blue)
{
this.red = red;
this.green = green;
this.blue = blue;
};
window.onload = function() {
var c = document.getElementById("theCanvas");
var ctx = c.getContext("2d");
ctx.beginPath();
ctx.arc(95,50,40,0,2*Math.PI);
ctx.stroke();
for (var colour in colours){
console.log(colour.red);
console.log(colour.green);
console.log(colour.blue);
};
var myColour = new colour(255,255,255);
console.log(myColour.red);
console.log(myColour.green);
console.log(myColour.blue);
};
謝謝,這很好。雖然我注意到了另一個問題。循環顯示顏色數組時,我會得到'未定義'值。任何想法爲什麼?再次感謝。 – Nate
@Nate很確定這是因爲你正在使用'for ... in'循環。在數組上使用一個普通的'for'循環或'forEach',它可以正常工作。我已經使用了'forEach' [這裏](http://jsfiddle.net/RUBT7/2/) –
你現在就在。同時將'c.red'改爲'colors [c] .red'的工作。歡呼聲 – Nate