質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

Q&A

解決済

3回答

2501閲覧

FizzBuzz問題 javascript

pe-ji

総合スコア17

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

0グッド

0クリップ

投稿2015/06/21 13:27

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]になってしまいます。どこを直せばいいでしょうか?
よろしくお願いします。。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答3

0

array.splice(i, 1 , ["FizzBuzz"]);

array.splice(i, 1 , "FizzBuzz");

にすればよいのでは。もちろん、splice を使わない実装も可能ですが。

投稿2015/06/21 14:01

H_Kuruno

総合スコア65

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

pe-ji

2015/06/21 14:21

ありがとうございます! その通りでした!^^b
guest

0

自己解決

解決しました。spliceの三つ目の引数からに[]は必要ありませんでした。

投稿2015/06/21 14:00

pe-ji

総合スコア17

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

そのコードでも普通に表示されるうちの環境はなんなんでしょうwww

lang

1FizzBuzz,1,2,Fizz,4,Buzz,Fizz,7,8,Fizz,Buzz,11,Fizz,13,14,FizzBuzz,16,17,Fizz,19,Buzz,Fizz,22,23,Fizz,Buzz,26,Fizz,28,29,FizzBuzz,31,32,Fizz,34,Buzz,Fizz,37,38,Fizz,Buzz,41,Fizz,43,44,FizzBuzz,46,47,Fizz,49,Buzz,Fizz,52,53,Fizz,Buzz,56,Fizz,58,59,FizzBuzz,61,62,Fizz,64,Buzz,Fizz,67,68,Fizz,Buzz,71,Fizz,73,74,FizzBuzz,76,77,Fizz,79,Buzz,Fizz,82,83,Fizz,Buzz,86,Fizz,88,89,FizzBuzz,91,92,Fizz,94,Buzz,Fizz,97,98,Fizz

投稿2015/06/21 14:17

rossi46hiro

総合スコア992

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

pe-ji

2015/06/21 14:22

えっ、なんでなんですかね〜〜笑
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問