+ JavaScript の質問用スレッド vol.84 +

このエントリーをはてなブックマークに追加
952Name_Not_Found:2011/03/30(水) 13:51:35.10 ID:???
おいテンプレの話題してたのに流すな氏ねカス共
953Name_Not_Found:2011/03/30(水) 13:51:52.59 ID:???
PCには正確な閏年のデータが入ってるって前提だよね?
954Name_Not_Found:2011/03/30(水) 13:58:53.74 ID:???
>>953
安全な仮定だと思う。十分に。
955Name_Not_Found:2011/03/30(水) 14:03:00.41 ID:???
パフォーマンスは段違い。

function isLeapYear1(y) {
return (new Date(y, 2, 1-1).getDate() !== 28)? 1 : 0;
}

function isLeapYear2(y) {
if (!(y % 400)) return 1;
if (!(y % 100)) return 1;
if (!(y % 4)) return 1;

var s = +new Date();
for (var i = 0; i < 1000000; ++i) {
isLeapYear1(2011);
// isLeapYear2(2011);
}
alert(+new Date() - s);
956Name_Not_Found:2011/03/30(水) 14:03:46.26 ID:???
いつまでも続けるなうざい
957Name_Not_Found:2011/03/30(水) 14:03:55.43 ID:???
>>947
三角関数を使わずにテイラー展開する派?
958955:2011/03/30(水) 14:04:22.73 ID:???
途中切れてる;;
959Name_Not_Found:2011/03/30(水) 14:06:09.59 ID:8Ph8Wn9I
>>952
個人的にはwiki案を推す

広告嫌だって人が鯖借りてくれるってんなら
ありがたくお任せしたいけど、運用まで丸投げだと色々アレだから
wikiインスコしてくれるといいな

現状のコード共有サイトのままでも悪くない気はする
スタイルも誰か書いてくれたし
960Name_Not_Found:2011/03/30(水) 14:08:21.22 ID:???
だから>>899自体が的外れだって。


テンプレ議論
>>919
>>920
>>922
>>923
>>925
>>927

>>920さんまち?GoogleとかWikiってのもあがってるけど。
というか>>919って広告入ってるの?見当たらないんだけど。
>>919の4レスとFAQへのリンクでいいんじゃね?
961Name_Not_Found:2011/03/30(水) 14:12:08.54 ID:???
>>919のは最新のが解りづらいぐらいか?
962Name_Not_Found:2011/03/30(水) 14:12:17.64 ID:???
Googleサイトもwikiとして利用できるからそこにドキュメントを入れて皆で更新できるようなものとか
963Name_Not_Found:2011/03/30(水) 14:14:18.99 ID:???
jsスレだからjsをapiとして提供して各ユーザーのローカルでhtmlからインクルード
964Name_Not_Found:2011/03/30(水) 14:16:14.75 ID:???
>>961
勝手に更新したり荒らされたりしたときに困るからこれでいいと思う
965Name_Not_Found:2011/03/30(水) 14:17:08.89 ID:???
>>963
面白いけど誰がAPIを提供する?
966Name_Not_Found:2011/03/30(水) 14:21:53.17 ID:???
次スレは975超えたら。と思ってたら急激に進んだのでもう近い。
「とりあえず」次スレは>>919の4レスとFAQリンクでいいと洩れも思う。
FAQリンクの番号は一番大きいのは23番だけど、23番でいいの?22とか21の
方が良いという説はあったっけ?とにかくテンプレの55行目をその
適切な番号に取り替えると(忘れないようにしないと)。
967Name_Not_Found:2011/03/30(水) 14:33:16.45 ID:???
前より面倒なことになること間違いなし
968907:2011/03/30(水) 14:43:39.19 ID:???
>>946
指摘して結果的にコードも晒したでしょ
2/29で閏年じゃない場合かその逆のパターンがあるなら是非ソースと共に指摘してくれ

OSやブラウザにバグがある事を除いて
969Name_Not_Found:2011/03/30(水) 14:46:46.69 ID:???
OSとブラウザにバグがあるならそれを想定してコードを書くべきだと思うが
970Name_Not_Found:2011/03/30(水) 15:02:17.84 ID:???
テンプレどうなったの!早くまとめてよ!
971Name_Not_Found:2011/03/30(水) 15:14:10.71 ID:???
>>902
一通り全部読んで、後から必要になったらリファレンス的に。
972Name_Not_Found:2011/03/30(水) 15:14:26.61 ID:???
時間がない! とりあえず
http://codepad.org/PW2FFBIs
で、55行目の番号は13→21 ということで975超えたら次スレ立てよう!
まだ何かあるようならまた次スレ冒頭で確認するということで!
973Name_Not_Found:2011/03/30(水) 15:40:12.28 ID:???
閏年とかどうでもいいから、万年カレンダーのソースくれよ
974Name_Not_Found:2011/03/30(水) 15:44:00.50 ID:V3xE9fmx
>>972
よし、まかされた。
975超えたらやる
975Name_Not_Found:2011/03/30(水) 15:50:44.40 ID:???
テンプレとかいらんでしょ
どうせ質問者は>>1なんてみず最後のレスしか見ない
リンクだけ貼っとけ
ごちゃごちゃして見苦しい
976Name_Not_Found:2011/03/30(水) 15:55:01.16 ID:V3xE9fmx
977Name_Not_Found:2011/03/30(水) 16:14:22.05 ID:V3xE9fmx
>>973
いつも使ってるので良ければあるが
978Name_Not_Found:2011/03/30(水) 16:19:19.22 ID:???
>>977
ありがとう
979Name_Not_Found:2011/03/30(水) 16:21:14.16 ID:???
まだもらってないじゃないか。
980Name_Not_Found:2011/03/30(水) 16:27:25.91 ID:???
> 太陽暦では、季節に暦を一致させるため、暦年の平均の長さを平均回帰年(約365.242199日)に一致させる。
> 通常の太陽暦では平年は365日で、閏年は閏日が挿入されて366日である。閏年は約4年に1度ある。

楽勝じゃろ
981Name_Not_Found:2011/03/30(水) 16:29:02.77 ID:???
982Name_Not_Found:2011/03/30(水) 16:54:38.09 ID:V3xE9fmx
>>978
ほい
http://jsbin.com/otiga4/2/edit

Cal()の引数に週の最初にする曜日(なければ日曜)を。
getCalData()の引数に年と月(なければ今日)を渡すと
[
    [undefined,undefined,1,2,3,4,5],
    [6,7,8,9,10,11,12],
    [13,14,15,16,17,18,19],
    [20,21,22,23,24,25,26],
    [27,28,29,30,31]
]

な感じの配列が返ってくるはず
983Name_Not_Found:2011/03/30(水) 17:49:40.45 ID:???
>>976 多謝!
>>975 テンプレ不要という合意を得たいなら次スレ冒頭でぜひ議論を。
個人的には4レスのテンプレは欠点より利点の方が上回ると思ってる。
984Name_Not_Found:2011/03/30(水) 17:53:06.26 ID:???
>>982
すげー
解説求む
985Name_Not_Found:2011/03/30(水) 18:05:14.63 ID:???
ソース嫁w
986Name_Not_Found:2011/03/30(水) 18:05:24.26 ID:???
コード読めよ乞食
987Name_Not_Found:2011/03/30(水) 18:51:25.67 ID:V3xE9fmx
>>984
解説することなんて殆ど無いと思うんだが

月の初日の曜日を求める
月の最終日(翌月の初日の前日)を求める
週の最初の曜日の分だけズラしつつ、1〜最終をn行7列の二次元配列に詰め込む

ってだけなので
わからんことがあれば個別に
988907:2011/03/30(水) 19:28:24.37 ID:???
>>969
そもそもシステム日付を利用しているのは例であって

OSやブラウザのバグだと曜日判定ライブラリも使えないのは一緒でしょ

例えば入力チェック処理でも使えるし、いつもの公式よりパフォーマンスもいいし
何か問題ある?
989Name_Not_Found:2011/03/30(水) 19:50:11.99 ID:???
パフォーマンスが>>955のことをいっているならコードがおかしい
990Name_Not_Found:2011/03/30(水) 19:59:58.37 ID:???
パフォーマンスは 2 の方がずっと良いよ。
※ 2 の形は >>899 から引用。

function isLeapYear1(y) {
return (new Date(y, 2, 1-1).getDate() !== 28)? 1 : 0;
}

function isLeapYear2(y) {
if (!(y % 400)) return 1;
if (!(y % 100)) return 0;
if (!(y % 4)) return 1;
return 0;
}

var s = +new Date();
for (var i = 0; i < 1000000; ++i) {
isLeapYear1(2011);
// isLeapYear2(2011);
}
alert(+new Date() - s);

991Name_Not_Found:2011/03/30(水) 21:06:20.08 ID:???
閏年判定ロジックは昔どっかの宿題スレで格好いいロジック見かけたな。
992Name_Not_Found:2011/03/30(水) 21:36:20.76 ID:V3xE9fmx
wikiに書いてある
year%4 == 0 && year%100 != 0 || year%400 == 0

が一番スマートなんじゃないか?
993Name_Not_Found:2011/03/30(水) 21:39:44.59 ID:F+OQQPEw
>>992
そう思う。複雑に考えすぎなんじゃないかね…。
http://jsfiddle.net/9B3HJ/1/
994Name_Not_Found:2011/03/30(水) 23:53:29.93 ID:98nFxFjT
document.writeするとページが変わる場合があるのですが、
そうなる場合とそうならない場合の違いって何なんでしょうか?
995Name_Not_Found:2011/03/30(水) 23:55:00.18 ID:???
907逃亡説
996Name_Not_Found:2011/03/31(木) 00:09:23.31 ID:???
<head>の中で使ってるんでねーの?
>>994
997Name_Not_Found:2011/03/31(木) 00:55:13.07 ID:???
>>995
誠実に応えてたと思うけどな。
何を求めて行動してる?
998Name_Not_Found:2011/03/31(木) 01:10:58.66 ID:???
うるう年判定とかを自分で書いちゃうタイプの人がバグを作りこんで、
907みたいな人が尻拭いをしてるんだろうなー
うめうめ
999Name_Not_Found:2011/03/31(木) 01:21:10.79 ID:7/K68nMp
まあ、Dateがそんなに速くないってことがわかって勉強になったわ
うめうめ
1000Name_Not_Found:2011/03/31(木) 01:22:51.00 ID:???
10011001
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。