fizzbuzz問題(3の倍数の時"Fizz"を、5の倍数の時"Buzz"を、15の倍数の時"Fizz_Buzz"を出す)を解こうと思っているのですが、
var range = function(n)
{
var array = [];
for (var i = 0; i < n; i++)
{
array[i] = i;
if(array[i] % 15 === 0)
array.splice(i, 1 , ["FizzBuzz"]);
else if (array[i] % 5 === 0)
array.splice(i, 1 , ["Buzz"]);
else if (array[i] % 3 === 0)
array.splice(i, 1 , ["Fizz"]);
}
return array;
};
console.log(range(100));
とすると、 結果が
[Array[1], 1, 2, Array[1], 4, Array[1], Array[1], 7, 8, Array[1], Array[1], 11, Array[1], 13, 14, Array[1], 16, 17, Array[1], 19, Array[1], Array[1], 22, 23, Array[1], Array[1], 26, Array[1], 28, 29, Array[1], 31, 32, Array[1], 34, Array[1], Array[1], 37, 38, Array[1], Array[1], 41, Array[1], 43, 44, Array[1], 46, 47, Array[1], 49, Array[1], Array[1], 52, 53, Array[1], Array[1], 56, Array[1], 58, 59, Array[1], 61, 62, Array[1], 64, Array[1], Array[1], 67, 68, Array[1], Array[1], 71, Array[1], 73, 74, Array[1], 76, 77, Array[1], 79, Array[1], Array[1], 82, 83, Array[1], Array[1], 86, Array[1], 88, 89, Array[1], 91, 92, Array[1], 94, Array[1], Array[1], 97, 98, Array[1]]
となって、倍数時に変化させられたのですが、全部Array[1]になってしまいます。どこを直せばいいでしょうか?
よろしくお願いします。。
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2015/06/21 14:21