- PR -

JavaScriptで年月日を8ケタ固定で表示したい

1
投稿者投稿内容
すひろ
大ベテラン
会議室デビュー日: 2006/10/17
投稿数: 124
お住まい・勤務地: 愛知県
投稿日時: 2007-03-09 00:23
いつも参考にさせてもらっています。
JavaScriptについての質問です。

色々なホームページを参考に、
YYYYMMDD形式とhh::mm:ss形式で年月日時分秒を表示するJavaScriptを作りました。
ただ、このコードでは仮に2007年3月8日だった場合、
"20070308"と表示されてほしいのですが"200738"になってしまいます。

"20070308"と表示させることはできるでしょうか?
やり方をご存知の方がいましたら、教えてください。

Eclipse3.2とTomcat5.0を使ったWebアプリケーションで使用しています。
よろしくお願いします。

<SCRIPT LANGUAGE="JavaScript">
<!--
genzai = new Date();
nen=genzai.getYear();
tuki=genzai.getMonth()+1;
hi=genzai.getDate();
jikan=genzai.getHours();
hun=genzai.getMinutes();
byo=genzai.getSeconds();
document.write("日付:"+nen+""+tuki+""+hi);
document.write(" 時刻:"+jikan+":"+hun+":"+byo);
//-->
</SCRIPT>
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2007-03-09 00:35
http://clonedoppelganger.net/javascript/DateFormatter.html

_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌
かつのり
ぬし
会議室デビュー日: 2004/03/18
投稿数: 2015
お住まい・勤務地: 札幌
投稿日時: 2007-03-09 01:20
なぜ、そのような現象になっているか分かって質問されていますか?
文字列連結して使用するまえに、個々の変数の値がどのようになっているか表示しましょう。

月を示す変数が"3"になっていれば、頭に"0"を付けるだけです。
いくらでもやり方があるのでイチイチ書きませんが、
if文で1文字か2文字かの判定くらいは分かりますよね?
ひろ@ya
大ベテラン
会議室デビュー日: 2006/02/23
投稿数: 168
投稿日時: 2007-03-09 08:32
getYearはブラウザによっては西暦1900年からの経過年数を返すので、
getFullYearを使うべきですね。
すひろ
大ベテラン
会議室デビュー日: 2006/10/17
投稿数: 124
お住まい・勤務地: 愛知県
投稿日時: 2007-03-10 00:36
if文で以下のような記述を追加したことで解決しました。

くだらない質問をしてしまい、申しわけありませんでした。

if (jikan < 10) {
  jikan="0"+jikan;
}
1

スキルアップ/キャリアアップ(JOB@IT)