Copyright(C) 2016-20xxをjavascriptで書く方法
javascriptの超初心者です。
javascriptでフッターのところの日付を出力して、更新作業をしなくて済むようにしたいと思っています。
できるだけすべてのブラウザで動くこと、できるだけ簡単に短いコード書くことが理想ではあります。
今日の日付と現在時刻-JavaScript入門
http://www.pori2.net/js/date/1.html
<script type="text/javascript">
//ここにスクリプトを書きます
</script> // -->
<noscript>
JavaScript対応ブラウザで表示してください。
</noscript>
var hiduke=new Date();
var year = hiduke.getFullYear();
document.write("西暦"+year+"年"+month+"月"+day+"日 "+yobi[week]+"曜日");
- こんな感じで、1行で書きたいのですが、問題ないでしょうか?間違ってるような気もしますし、もっとうまく書けるような気がします。
Copyright(C) <script type="text/javascript"><!-- var hiduke=new Date(); var year = hiduke.getFullYear(); document.write("2016-"+year); //--></script><noscript>2016</noscript>
- 思違いかもしれませんが、Copyright(C) のところを動的に書いてるサイトは少ない気がしますが、なぜでしょうか?まさか制作会社はそのほうが仕事が増えるので、そうしているなんてことはないですよね?
以上、お願い申し上げます。
みんなの回答 4 件
javascriptでやるようなことではない。こーゆーのはサーバー側のプログラムでやるのが一般的。
よく調査すれば判るけど、年号は最初の年だけでもいーの。それが一番楽ちん。
> Copyright(C) のところを動的に書いてるサイトは少ない気がします
ブラウザ側のコードでやろうとしてる人は少ないだろうね
トピ主の質問のうち「Copyright(C) のところを動的に書いてるサイトは少ない気がしますが、なぜでしょうか?」は、上のコメが言っている通り普通はサーバーサイドでやるからです。
もう1つの質問「こんな感じで、1行で書きたいのですが、問題ないでしょうか?間違ってるような気もしますし、もっとうまく書けるような気がします。」については、
とりあえず動きはするだろうからその意味では問題ないです。
ただ、「もっとうまく書けるような気がします。」というのはおっしゃる通りで、トピ主が提示した書き方は15年くらい前のやり方で、今から見ると相当古くてダサいです。
少し本筋から逸れますが、まずスクリプトを<!-- //--> で囲っているのが相当古い書き方でダサいです。
また、document.writeを使っているのもダサいです。さらにこれはHTMLのパースとレンダリングがJavaScriptの実行にブロックされるという実際的な問題点もあるのでやめたほうがいいです。
少し現代的にするなら、スクリプトをasyncにして年号のところをspanか何かで囲っておき、あとからDOM操作でspanの中を書き換えるといいです。
関連するトピックス