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

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

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

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

Q&A

解決済

4回答

5469閲覧

【JavaScript】for文を使って配列として格納する方法 その2

phiilo_

総合スコア85

JavaScript

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

0グッド

0クリップ

投稿2017/06/27 05:12

以前、PHPで「for文を使って配列として格納する方法」という質問を投稿させていただき、解決しました。

今度はJavaScriptで似たような処理を行いたいと思います。

1年365日を下記のように、配列に保存していきたいです。
1年365日あるので、1月1日、1月2日、1月3日...12月31日まであります。

for (var i=0; i<364; i++) { arr[i] = "1月1日" 〜 "12月31日"; }

ちなみにPHPの場合

for($m = 1; $m <= 12; $m++){ for($d = 1; $d <= date('t',mktime(0,0,0,$m,1,date('y'))); $d++){ $COL_MD[] = $m . "月" . $d . "日"; } }

ご回答いただければ助かります。
よろしくお願いいたします。

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

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

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

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

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

guest

回答4

0

ベストアンサー

例えばうるう年でないとわかっている年をつかえばこんな感じ

javascript

1var a=[]; 2var d=new Date("2017-01-01"); 3for(var i=0;i<365;i++){ 4 a[i]=(d.getMonth()+1)+"月"+(d.getDate())+"日"; 5 d.setDate(d.getDate()+1); 6} 7console.log(a); 8

投稿2017/06/27 06:03

yambejp

総合スコア114572

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

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

phiilo_

2017/06/27 06:11

うるう年は気にしなくて良いという一文を忘れていました。 こんな丸投げした虫のいい質問にわかりやすく回答していただきありがとうございました!いつもありがとうございます。
yambejp

2017/06/27 06:24

10分考えて思いつかないことはそれ以上考えても無駄なので 聞くべきことは聞けばいいんじゃないですかねぇ ご自身でわかっているキーワードだけでも提示されれば丸投げではなくなりますので そのあたりの努力している感をだすことは配慮したほうがよいでしょう。 聞いてやり方を理解して、次回から自力で解ければいいと思います (東大合格者の問題集の解き方がそうだと言ってました)
phiilo_

2017/06/27 06:30

東大合格者の問題集の解き方すごいですねぇ! yambejpさんを見習って頑張りますー
guest

0

うるう年は考えなくていいのでしょうか?

JavaScript

1var d = new Date(2017, 0, 1); 2var end = new Date(d.getFullYear() + 1, 0, 1); 3var arr = []; 4while (d < end) { 5 arr.push(`${(d.getMonth() + 1)}${d.getDate()}`); 6 d.setDate(d.getDate() + 1); 7} 8 9console.log(arr);

投稿2017/06/27 06:08

x_x

総合スコア13749

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

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

phiilo_

2017/06/27 06:13

うるう年は考えなくていいです。 こちらも参考にさせていただきます。ご親切にありがとうございました。
guest

0

javascript

1var r = []; 2for (i = 0; i < 365; i++) { 3 var d = new Date(2017,0,1+i); 4 r[i] = (d.getMonth() + 1) + "月" + d.getDate() + "日"; 5} 6console.log(r);

投稿2017/06/27 05:19

編集2017/06/27 05:27
shi_ue

総合スコア4437

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

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

phiilo_

2017/06/27 05:21

PHPではなく、JavaScriptでご回答いただければ助かります。
shi_ue

2017/06/27 05:22

それにしても丸投げです。少々ご自分でコードを書いてはいかがでしょうか?
phiilo_

2017/06/27 05:40

確かにdate('t',mktime(0,0,0,$m,1,date('y'))); のところをJavaScriptのdate();にするだけなのですが、今色々調べながらやってます。 時間がないため質問しています。ご了承ください。
think49

2017/06/27 05:50

teratailの「推奨していない質問」に該当すると思われます。 https://teratail.com/help/avoid-asking 「時間がない」との事ですが、虫がいい要求ではないでしょうか。
guest

0

var a=[];
var d=new Date("2017-01-01");
for(var i=0;i<365;i++){
a[i]=(d.getMonth()+1)+"月"+(d.getDate())+"日";
d.setDate(d.getDate()+1);
}
console.log(a);

投稿2017/06/27 06:14

phiilo_

総合スコア85

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.50%

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

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

質問する

関連した質問