$.now()
は、ミリ秒単位の時間を示します。 hh:mm:ss
のようなものを表示する必要があります
Jqueryでそれを行うにはどうすればよいですか?
function formatTimeOfDay(millisSinceEpoch) {
var secondsSinceEpoch = (millisSinceEpoch / 1000) | 0;
var secondsInDay = ((secondsSinceEpoch % 86400) + 86400) % 86400;
var seconds = secondsInDay % 60;
var minutes = ((secondsInDay / 60) | 0) % 60;
var hours = (secondsInDay / 3600) | 0;
return hours + (minutes < 10 ? ":0" : ":")
+ minutes + (seconds < 10 ? ":0" : ":")
+ seconds;
}
この目的には、JavaScriptのDateオブジェクトを使用することをお勧めします。
var d = new Date();
var time = d.getHours() + ":" + d.getMinutes() + ":" + d.getSeconds();
編集:私はちょうど以下の方法に出くわしました、それは言及されたマイク・サミュエルのようなフォーマットの問題をカバーし、よりクリーンです:
var time = d.toLocaleTimeString();
JSFiddleの例はこちら
Jqueryは今やほんの少しです
$ .now()メソッドは、式によって返される数値の省略形です
(new Date).getTime().
jqueryから
http://api.jquery.com/jQuery.now/
このリンクをたどってください
new Date().toString().split(' ')[4]
または
new Date().toString().match(/\d{2}:\d{2}:\d{2}/)[0]
toString
メソッドは基本的に、ほとんどの実装でのtoLocaleString
のエイリアスです。これは、getTime
(getMilliseconds
を使用する場合は問題ない)またはtoUTCString
を使用する場合、ミリ秒を使用してUTCを想定するのではなく、ユーザーのタイムゾーンで時刻を返します。
私はこれにかなり遅れていますが、私は大衆のためにこの小さなスニペットを捨てるだけだと思いました。これは、ローカライズされた迅速なタイムスタンプを取得するためだけに使用するものです。それはかなりきれいで便利です。
function getStamp() {
var d = new Date();
var mm = d.getMilliseconds(), hh = d.getHours(),
MM = d.getMinutes(), ss = d.getSeconds();
return (hh < 10 ? "0" : "") + hh + (MM < 10 ? ":0" : ":") + MM + (ss < 10 ? ":0" : ":") + ss + ":" + mm;
};
jQueryには日付のフォーマットがありません。 JavaScript Date
オブジェクトを使用して独自にロールすることも、それを行うライブラリを使用することもできます。 DateJS はそのようなライブラリの1つであり、フォーマット、解析、および操作機能の豊富なセットを提供します。しかし、それは何年も維持されていません。 momentjs
は活発に開発中です。