+ JavaScript の質問用スレッド vol.84 +
おいテンプレの話題してたのに流すな氏ねカス共
PCには正確な閏年のデータが入ってるって前提だよね?
パフォーマンスは段違い。
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);
いつまでも続けるなうざい
>>947 三角関数を使わずにテイラー展開する派?
958 :
955:2011/03/30(水) 14:04:22.73 ID:???
途中切れてる;;
959 :
Name_Not_Found:2011/03/30(水) 14:06:09.59 ID:8Ph8Wn9I
>>952 個人的にはwiki案を推す
広告嫌だって人が鯖借りてくれるってんなら
ありがたくお任せしたいけど、運用まで丸投げだと色々アレだから
wikiインスコしてくれるといいな
現状のコード共有サイトのままでも悪くない気はする
スタイルも誰か書いてくれたし
Googleサイトもwikiとして利用できるからそこにドキュメントを入れて皆で更新できるようなものとか
jsスレだからjsをapiとして提供して各ユーザーのローカルでhtmlからインクルード
>>961 勝手に更新したり荒らされたりしたときに困るからこれでいいと思う
次スレは975超えたら。と思ってたら急激に進んだのでもう近い。
「とりあえず」次スレは
>>919の4レスとFAQリンクでいいと洩れも思う。
FAQリンクの番号は一番大きいのは23番だけど、23番でいいの?22とか21の
方が良いという説はあったっけ?とにかくテンプレの55行目をその
適切な番号に取り替えると(忘れないようにしないと)。
前より面倒なことになること間違いなし
968 :
907:2011/03/30(水) 14:43:39.19 ID:???
>>946 指摘して結果的にコードも晒したでしょ
2/29で閏年じゃない場合かその逆のパターンがあるなら是非ソースと共に指摘してくれ
OSやブラウザにバグがある事を除いて
OSとブラウザにバグがあるならそれを想定してコードを書くべきだと思うが
テンプレどうなったの!早くまとめてよ!
>>902 一通り全部読んで、後から必要になったらリファレンス的に。
閏年とかどうでもいいから、万年カレンダーのソースくれよ
974 :
Name_Not_Found:2011/03/30(水) 15:44:00.50 ID:V3xE9fmx
>>972 よし、まかされた。
975超えたらやる
テンプレとかいらんでしょ
どうせ質問者は
>>1なんてみず最後のレスしか見ない
リンクだけ貼っとけ
ごちゃごちゃして見苦しい
976 :
Name_Not_Found:2011/03/30(水) 15:55:01.16 ID:V3xE9fmx
977 :
Name_Not_Found:2011/03/30(水) 16:14:22.05 ID:V3xE9fmx
まだもらってないじゃないか。
> 太陽暦では、季節に暦を一致させるため、暦年の平均の長さを平均回帰年(約365.242199日)に一致させる。
> 通常の太陽暦では平年は365日で、閏年は閏日が挿入されて366日である。閏年は約4年に1度ある。
楽勝じゃろ
982 :
Name_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]
]
な感じの配列が返ってくるはず
>>976 多謝!
>>975 テンプレ不要という合意を得たいなら次スレ冒頭でぜひ議論を。
個人的には4レスのテンプレは欠点より利点の方が上回ると思ってる。
ソース嫁w
コード読めよ乞食
987 :
Name_Not_Found:2011/03/30(水) 18:51:25.67 ID:V3xE9fmx
>>984 解説することなんて殆ど無いと思うんだが
月の初日の曜日を求める
月の最終日(翌月の初日の前日)を求める
週の最初の曜日の分だけズラしつつ、1〜最終をn行7列の二次元配列に詰め込む
ってだけなので
わからんことがあれば個別に
988 :
907:2011/03/30(水) 19:28:24.37 ID:???
>>969 そもそもシステム日付を利用しているのは例であって
OSやブラウザのバグだと曜日判定ライブラリも使えないのは一緒でしょ
例えば入力チェック処理でも使えるし、いつもの公式よりパフォーマンスもいいし
何か問題ある?
パフォーマンスが
>>955のことをいっているならコードがおかしい
パフォーマンスは 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);
閏年判定ロジックは昔どっかの宿題スレで格好いいロジック見かけたな。
992 :
Name_Not_Found:2011/03/30(水) 21:36:20.76 ID:V3xE9fmx
wikiに書いてある
year%4 == 0 && year%100 != 0 || year%400 == 0
が一番スマートなんじゃないか?
993 :
Name_Not_Found:2011/03/30(水) 21:39:44.59 ID:F+OQQPEw
994 :
Name_Not_Found:2011/03/30(水) 23:53:29.93 ID:98nFxFjT
document.writeするとページが変わる場合があるのですが、
そうなる場合とそうならない場合の違いって何なんでしょうか?
907逃亡説
<head>の中で使ってるんでねーの?
>>994
>>995 誠実に応えてたと思うけどな。
何を求めて行動してる?
うるう年判定とかを自分で書いちゃうタイプの人がバグを作りこんで、
907みたいな人が尻拭いをしてるんだろうなー
うめうめ
999 :
Name_Not_Found:2011/03/31(木) 01:21:10.79 ID:7/K68nMp
まあ、Dateがそんなに速くないってことがわかって勉強になったわ
うめうめ
1001 :
1001:
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。