今日の日付を表示するのに,年,月,日全て2桁表示したい場合はどうすれば,
いいでしょうか?(たとえば,今日だと,「020115」となります。)

A 回答 (5件)

> 欲しい数字が,[+sj(new Date())の部分]


> 0020020010016となってしまいます。

あれっ?だめですか?
私もxruzさんのスクリプトで試してみましたがうまくいきましたよ。
function n99(n) {... の行を写し間違えていないかもう一度確認してみてください。

ところで、No.3の補足のやつが動かなかったのは、最後の行が間違っていたからでしょう。
誤).../zzz/234567+"year+month+day".gif'>");
正).../zzz/234567"+year+month+day+".gif'>");
    • good
    • 0
この回答へのお礼

色々頑張った結果,以下のプログラムに落ち着きました。
何で,xruzさんのでは,うまくいかないのか,解決してませんが・・・
IEのバージョンが,5.0と言うのが関係あるでしょうか?
色々と本当に,ありがとうございました。
これから,もっと精進します。:P

<HTML><HEAD><TITLE></TITLE></HEAD>
<BODY>
<SCRIPT Language="JavaScript">
<!--
var date = new Date();
var day = date.getDate();
var month = date.getMonth() + 1;
var year = date.getFullYear() % 100;
day = ((day < 10) ? "0" : "") + day;
month = ((month < 10) ? "0" : "") + month;
year = ((year < 10) ? "0" : "") + year;
document.write("<IMG SRC='http://www.xxx.com/yyy/23456"+year+month+day+".g …);
//-->
</SCRIPT></BODY></HTML>

お礼日時:2002/01/16 18:44

No2のxruzです。

こんな感じかな?

<html>
<head>
<title></title>
</head>
<script language="JavaScript">
<!--
function n99(n) { return ("00"+n.toString()).slice(-2); }
function sj(d) {
return n99(d.getFullYear())+n99((d.getMonth()+1))+n99(d.getDate());
}
//-->
</script>
<body>
<script language="JavaScript">
<!--
document.write("<IMG SRC='http://www.xxx.com/yyy/zzz/234567"+sj(new Date())+".gif'>");
//-->
</script>
</body>
</html>

がんばってね(~:~i

この回答への補足

お返事ありがとうございます。
上記のプログラムに,より,エラーはなくなったのですが,
欲しい数字が,[+sj(new Date())の部分]
0020020010016となってしまいます。本当は,020116(2002年1月16日)が,欲しいです。
どこを修正すればいいでしょうか?
度々の質問すいません。

補足日時:2002/01/16 07:43
    • good
    • 0

No.1のUKYです。

すこし補足いたします。

getYear()は、1900年を基準にして値を返します。
例) 1996→96  2002→102

これだとちょっと使いづらいので、年号を数字をそのまま返す
getFullYear()を使ったほうが便利です。
例) 1996→1996  2002→2002


あと、getMonth()は実際の数字より値が1つ小さくなっているので、
注意が必要。
例) 1月→0   5月→4


分からなければさらに補足します。
(あなたがどの程度の初心者なのかわからないので…)

この回答への補足

解説ありがとうございます。
補足させていただきます。
今,自分がやりたいことは毎日更新されるページをデスクトップに表示させようとしてます(アクティブデスクトップの設定で)。そこで,現在作成中のソースを下に示します。どこが悪いのか,今ひとつ分かりません。もしよろしかったら教えてください。
ちなみに,document.write,,,,,,の行はどこからかもってきたものなので,理解はしてません。
あと,URLのところの,234567と言う数字は毎日の変更はありません。
下6桁が毎日変更され,それが日付と対応してるのです。
では,よろしくお願いします。

<html>
<head>
<title></title>
</head>
<script language="JavaScript">
<!--
var date = new Date();
var day = date.getDate();
var month = date.getMonth() + 1;
var year = date.getFullYear() % 100;
day = ((day < 10) ? "0" : "") + day;
month = ((month < 10) ? "0" : "") + month;
year = ((year < 10) ? "0" : "") + year;
document.write("<IMG SRC='http://www.xxx.com/yyy/zzz/234567+"year+month+da …);
//-->
</script>
</html>

補足日時:2002/01/15 18:56
    • good
    • 0

こんにちはsyakureさん、xruzです。


こんなんでもいいですよ。

<html>
<head>
<title></title>
</head>
<script language="JavaScript">
<!--
function n99(n) { return ("00"+n.toString()).slice(-2); }
function sj(d) {
document.f.t.value=n99(d.getFullYear())+n99((d.getMonth()+1))+n99(d.getDate());
}
//-->
</script>
<body onLoad="sj(new Date())">
<form name="f">
<input type="text" name="t">
</form>
</body>
</html>

がんばってくださいね(~:~i
    • good
    • 0

こんな感じでどうでしょう?



var date = new Date();
var day = date.getDate();
var month = date.getMonth() + 1;
var year = date.getFullYear() % 100;
day = ((day < 10) ? "0" : "") + day;
month = ((month < 10) ? "0" : "") + month;
year = ((year < 10) ? "0" : "") + year;
document.write(year + month + day);
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


人気Q&Aランキング

おすすめ情報