jqueryで現在の日付を取得するにはどうすればよいですか?


181

jQueryでDate()関数を使用して現在の日付をyyyy/mm/ddフォーマットで取得する方法を知りたい。

回答:


325

Date()はの一部ではなくjQuery、JavaScriptの機能の1つです。

Dateオブジェクトのドキュメントを参照してください。

あなたはそれをそのようにすることができます:

var d = new Date();

var month = d.getMonth()+1;
var day = d.getDate();

var output = d.getFullYear() + '/' +
    (month<10 ? '0' : '') + month + '/' +
    (day<10 ? '0' : '') + day;

証明については、このjsfiddleを参照してください。

このコードは、月と日がより小さい数値で表されることを処理する必要があるため、複雑なコードのように見える可能性があります10(つまり、文字列は2文字ではなく1文字になります)。比較のために、このjsfiddleを参照してください。


2
知らなかった。jquery.plzヘルプで現在の日付を取得するために検索しています。
サラ

答えてくれてありがとう:)私は今までにyyyy / mm / ddのような形式の日付を見たことはありませんが、それは一部の国で使用されていますか?私はyyyy-mm-ddとyyyymmddを見てきました
Manachi '27 / 09/27

1
@Manachiはいスリランカで使用されています
サラ

2
パレスチナでも使用:)
Nada N. Hantouli

また、一般的に韓国と南アフリカで使用される
Muleskinner

131

jQuery UI(datepickerに必要)がある場合、これでうまくいきます。

$.datepicker.formatDate('yy/mm/dd', new Date());

6
jquery-uiが必要
Alex G

1
はい。私はjQuery UIを使用したので、このソリューションは完璧です。ありがとう。
Chen Li Yong

44

jQueryはJavaScriptです。JavaScript Dateオブジェクトを使用します。

var d = new Date();
var strDate = d.getFullYear() + "/" + (d.getMonth()+1) + "/" + d.getDate();

3
d.getMonth()月(0〜11)を返すため、間違っている可能性があります
Gaurav Agrawal

2
getMonth()リターンの間の数字011。これは、よくあるJavaScriptの間違いです。またtoString()、説明とは異なる方法で動作します(このjsfiddleおよびこのドキュメントのページを参照してください)。要約すると、提供したソリューションはどれも適切に機能しません。
Tadeck

1
言い訳のない月、以前に犯した間違い、そしてそこから学んだことのない間違い!toString私はうまくいったと誓いますが、私はあなたのjsFiddleをChromeでテストしました、そしてあなたは正しいです。私の回答から削除されました。ありがとう。
Connell、2011

31

純粋なJavascriptを使用して、独自のYYYYMMDD形式をプロトタイプ化できます

Date.prototype.yyyymmdd = function() {
  var yyyy = this.getFullYear().toString();
  var mm = (this.getMonth()+1).toString(); // getMonth() is zero-based
  var dd  = this.getDate().toString();
  return yyyy + "/" + (mm[1]?mm:"0"+mm[0]) + "/" + (dd[1]?dd:"0"+dd[0]); // padding
};

var date = new Date();
console.log( date.yyyymmdd() ); // Assuming you have an open console

21

JavaScriptでは、Dateオブジェクトを使用して現在の日付と時刻を取得できます。

var now = new Date();

これにより、ローカルクライアントマシンの時間が取得されます

jquery LINKの

jQuery DatePickerを使用している場合は、次のように任意のテキストフィールドに適用できます。

$( "#datepicker" ).datepicker({dateFormat:"yy/mm/dd"}).datepicker("setDate",new Date());

これは、希望するものではなく、完全な日付時刻値を取得します。
サラ

15

質問は次のようにタグ付けされているのでJQuery

あなたも使用しているJQuery UI場合は、使用できます$.datepicker.formatDate()

$.datepicker.formatDate('yy/mm/dd', new Date());

このデモをご覧ください。


15
function GetTodayDate() {
   var tdate = new Date();
   var dd = tdate.getDate(); //yields day
   var MM = tdate.getMonth(); //yields month
   var yyyy = tdate.getFullYear(); //yields year
   var currentDate= dd + "-" +( MM+1) + "-" + yyyy;

   return currentDate;
}

それを使用するための非常に便利な機能、お楽しみください


2
これは美しく機能して値を設定し、その後、日付ピッカーを非表示にする後続の呼び出しで、すべてのブラウザーで値を修正しました。きちんと!
nicholeous


9

メソッドtopは、現在の日、年、または月を取得します

new Date().getDate()          // Get the day as a number (1-31)
new Date().getDay()           // Get the weekday as a number (0-6)
new Date().getFullYear()      // Get the four digit year (yyyy)
new Date().getHours()         // Get the hour (0-23)
new Date().getMilliseconds()  // Get the milliseconds (0-999)
new Date().getMinutes()       // Get the minutes (0-59)
new Date().getMonth()         // Get the month (0-11)
new Date().getSeconds()       // Get the seconds (0-59)
new Date().getTime()          // Get the time (milliseconds since January 1, 1970)


6
//convert month to 2 digits<p>
var twoDigitMonth = ((fullDate.getMonth().length+1) === 1)? (fullDate.getMonth()+1) : '0' + (fullDate.getMonth()+1);

var currentDate =  fullDate.getFullYear()+ "/" + twoDigitMonth + "/" + fullDate.getDate();
console.log(currentDate);<br>
//2011/05/19

6

要素にシンボルが1つしかない場合、このオブジェクトはゼロを設定します。

function addZero(i) {
    if (i < 10) {
        i = "0" + i;
    }
    return i;
}

このオブジェクトは、実際のフルタイム、時間、日付を設定します:

function getActualFullDate() {
    var d = new Date();
    var day = addZero(d.getDate());
    var month = addZero(d.getMonth()+1);
    var year = addZero(d.getFullYear());
    var h = addZero(d.getHours());
    var m = addZero(d.getMinutes());
    var s = addZero(d.getSeconds());
    return day + ". " + month + ". " + year + " (" + h + ":" + m + ")";
}

function getActualHour() {
    var d = new Date();
    var h = addZero(d.getHours());
    var m = addZero(d.getMinutes());
    var s = addZero(d.getSeconds());
    return h + ":" + m + ":" + s;
}

function getActualDate() {
    var d = new Date();
    var day = addZero(d.getDate());
    var month = addZero(d.getMonth()+1);
    var year = addZero(d.getFullYear());
    return day + ". " + month + ". " + year;
}

HTML:

<span id='full'>a</span>
<br>
<span id='hour'>b</span>
<br>    
<span id='date'>c</span>

JQUERY VIEW:

$(document).ready(function(){
    $("#full").html(getActualFullDate());
    $("#hour").html(getActualHour());
    $("#date").html(getActualDate());
});


6

私は私が遅れていることを知っていますが、これだけで十分です

var date = (new Date()).toISOString().split('T')[0];

toISOString()はjavascriptの組み込み関数を使用します。

cd = (new Date()).toISOString().split('T')[0];
console.log(cd);
alert(cd);


5

これは、moment.jsでも実現できます。HTMLにmoment.jsを含めます。

<script src="moment.js"></script>

スクリプトファイルで以下のコードを使用して、フォーマットされた日付を取得します。

moment(new Date(),"YYYY-MM-DD").utcOffset(0, true).format();


3

FYI-getDay()は曜日を提供します...つまり、今日が木曜日の場合、数値4(週の4日目)を返します。

月の適切な日を取得するには、getDate()を使用します。

以下の私の例...(また、単一の時間要素に先行0を与える文字列パディング関数(例:10:4:34 => 10:04:35)

function strpad00(s)
{
    s = s + '';
    if (s.length === 1) s = '0'+s;
    return s;
}

var currentdate = new Date();
var datetime = currentdate.getDate() 
    + "/" + strpad00((currentdate.getMonth()+1)) 
    + "/" + currentdate.getFullYear() 
    + " @ " 
    + currentdate.getHours() + ":" 
    + strpad00(currentdate.getMinutes()) + ":" 
    + strpad00(currentdate.getSeconds());

出力例:2013年12月31日@ 10:07:49
getDay()を使用する場合、出力は2013年12月4日@ 10:07:49になります。


2

jQueryプラグインのページがダウンしています。だから手動で:

function strpad00(s)
{
    s = s + '';
    if (s.length === 1) s = '0'+s;
    return s;
}

var now = new Date();
var currentDate = now.getFullYear()+ "/" + strpad00(now.getMonth()+1) + "/" + strpad00(now.getDate());
console.log(currentDate );


2
var d = new Date();

var today = d.getFullYear() + '/' + ('0'+(d.getMonth()+1)).slice(-2) + '/' + ('0'+d.getDate()).slice(-2);

修正されました。d.getMonth()+ 1 ...文字列の前に「0」を追加する前に(括弧の間に=集合)を計算しなければならない
フィリップ


1

あなたはこれを行うことができます:

    var now = new Date();
    dateFormat(now, "dddd, mmmm dS, yyyy, h:MM:ss TT");
     // Saturday, June 9th, 2007, 5:46:21 PM

または次のようなもの

    var dateObj = new Date();
    var month = dateObj.getUTCMonth();
    var day = dateObj.getUTCDate();
    var year = dateObj.getUTCFullYear();
    var newdate = month + "/" + day + "/" + year;
    alert(newdate);

1

このコードを使用できます:

var nowDate     = new Date();
var nowDay      = ((nowDate.getDate().toString().length) == 1) ? '0'+(nowDate.getDate()) : (nowDate.getDate());
var nowMonth    = ((nowDate.getMonth().toString().length) == 1) ? '0'+(nowDate.getMonth()+1) : (nowDate.getMonth()+1);
var nowYear     = nowDate.getFullYear();
var formatDate  = nowDay + "." + nowMonth + "." + nowYear;

ここで動作するデモを見つけることができます


1

これは、jQueryのみを使用して思いついたものです。ピースを組み合わせるだけです。

        //Gather date information from local system
        var ThisMonth = new Date().getMonth() + 1;
        var ThisDay = new Date().getDate();
        var ThisYear = new Date().getFullYear();
        var ThisDate = ThisMonth.toString() + "/" + ThisDay.toString() + "/" + ThisYear.toString();

        //Gather time information from local system
        var ThisHour = new Date().getHours();
        var ThisMinute = new Date().getMinutes();
        var ThisTime = ThisHour.toString() + ":" + ThisMinute.toString();

        //Concatenate date and time for date-time stamp
        var ThisDateTime = ThisDate  + " " + ThisTime;

0
var d = new Date();
var month = d.getMonth() + 1;
var day = d.getDate();
var year = d.getYear();
var today = (day<10?'0':'')+ day + '/' +(month<10?'0':'')+ month + '/' + year;
alert(today);

これは、間違った形式(d / m / y)を除いて、基本的に受け入れられた回答のコピーです
Rob Grzyb

0

私はピエールのアイデアを使用して作成したタイムスタンプのプロトタイプを共有したかっただけです。コメントするにはポイントが足りません:(

// US common date timestamp
Date.prototype.timestamp = function() {
  var yyyy = this.getFullYear().toString();
  var mm = (this.getMonth()+1).toString(); // getMonth() is zero-based
  var dd  = this.getDate().toString();
  var h = this.getHours().toString();
  var m = this.getMinutes().toString();
  var s = this.getSeconds().toString();

  return (mm[1]?mm:"0"+mm[0]) + "/" + (dd[1]?dd:"0"+dd[0]) + "/" + yyyy + " - " + ((h > 12) ? h-12 : h) + ":" + m + ":" + s;
};

d = new Date();

var timestamp = d.timestamp();
// 10/12/2013 - 2:04:19

0

jQuery-uiの日付ピッカーを使用すると、日付をフォーマットできる便利な日付変換ルーチンが組み込まれています。

var my_date_string = $.datepicker.formatDate( "yy-mm-dd",  new Date() );

シンプル。


0

現在の日付形式を取得する dd/mm/yyyy

これがコードです:

var fullDate = new Date();
var twoDigitMonth = ((fullDate.getMonth().toString().length) == 1)? '0'+(fullDate.getMonth()+1) : (fullDate.getMonth()+1);
var twoDigitDate = ((fullDate.getDate().toString().length) == 1)? '0'+(fullDate.getDate()) : (fullDate.getDate());
var currentDate = twoDigitDate + "/" + twoDigitMonth + "/" + fullDate.getFullYear();
alert(currentDate);

0
function createDate() {
            var date    = new Date(),
                yr      = date.getFullYear(),
                month   = date.getMonth()+1,
                day     = date.getDate(),
                todayDate = yr + '-' + month + '-' + day;
            console.log("Today date is :" + todayDate);

0

JavaScriptに拡張メソッドを追加できます。

Date.prototype.today = function () {
    return ((this.getDate() < 10) ? "0" : "") + this.getDate() + "/" + (((this.getMonth() + 1) < 10) ? "0" : "") + (this.getMonth() + 1) + "/" + this.getFullYear();
}

-3
function returnCurrentDate() {
                var twoDigitMonth = ((fullDate.getMonth().toString().length) == 1) ? '0' + (fullDate.getMonth() + 1) : (fullDate.getMonth() + 1);
                var twoDigitDate = ((fullDate.getDate().toString().length) == 1) ? '0' + (fullDate.getDate()) : (fullDate.getDate());
                var currentDate = twoDigitDate + "/" + twoDigitMonth + "/" + fullDate.getFullYear();
                return currentDate;
            }
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.