我有一個數組this.colors = [RED, BLUE, GREEN]
,有時我想從這個數組中選擇一個隨機顏色。 當我通過這樣做,結果是正常的:javascript函數返回函數
rand_color = this.colors[Math.floor(Math.random() * this.colors.length)]
javascript: console.log(rand_color)
// => rgb(211, 65, 65)
但是,當我在功能包好:
this.pick_random_color = function() {
return this.colors[Math.floor(Math.random() * this.colors.length)];
}
該函數不返回隨機值。相反,我在日誌中收到此消息:
color = this.pick_random_color;
javascript: console.log(color);
// => this.pick_random_color = function() {
// => return this.colors[Math.floor(Math.random() * this.colors.length)];
// => }
函數有什麼問題?
我敢肯定你的'this'被混淆代碼的使用,這是完全沒有必要的。 DaveShaw是100%正確的,在這種情況下,你正在爲'color'分配一個空變量。 – Alex