Bagaimana cara mendapatkan tanggal saat ini di jquery?

181

Saya ingin tahu cara menggunakan fungsi Date () di jQuery untuk mendapatkan tanggal saat ini dalam yyyy/mm/ddformat.

Sara
sumber

Jawaban:

325

Date()bukan bagian dari jQuery, ini adalah salah satu fitur JavaScript.

Lihat dokumentasi pada objek Tanggal .

Anda bisa melakukannya seperti itu:

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;

Lihat jsfiddle ini sebagai bukti.

Kode mungkin terlihat seperti kompleks, karena harus berurusan dengan bulan & hari yang diwakili oleh angka kurang dari 10(artinya string akan memiliki satu karakter, bukan dua). Lihat jsfiddle ini untuk perbandingan.

Tadeck
sumber
2
Saya tidak tahu itu. Saya mencari untuk mendapatkan tanggal saat ini di bantuan jquery.plz.
Sara
Terima kasih atas jawabannya :) Meskipun saya belum pernah dalam seluruh keberadaan saya melihat tanggal diformat seperti yyyy / mm / dd - apakah itu digunakan di beberapa negara? Saya pernah melihat yyyy-mm-dd dan yyyymmdd
Manachi
1
@Manachi Ya Ini digunakan di Sri Lanka
Sara
2
Juga digunakan di Palestina :)
Nada N. Hantouli
Juga biasa digunakan di Korea dan Afrika Selatan
Muleskinner
131

Jika Anda memiliki jQuery UI (diperlukan untuk datepicker), ini akan membantu:

$.datepicker.formatDate('yy/mm/dd', new Date());
Sara
sumber
6
membutuhkan jquery-ui
Alex G
1
Iya. Saya menggunakan jQuery UI, jadi solusi ini sangat cocok untuk saya. Terima kasih.
Chen Li Yong
44

jQuery adalah JavaScript. Gunakan DateObjek Javascript .

var d = new Date();
var strDate = d.getFullYear() + "/" + (d.getMonth()+1) + "/" + d.getDate();
Connell
sumber
3
d.getMonth () Mengembalikan bulan (dari 0-11) jadi mungkin salah
Gaurav Agrawal
2
getMonth()mengembalikan angka antara 0dan 11. Ini adalah kesalahan JavaScript yang cukup umum. Juga toString()bekerja dengan cara yang berbeda dari yang Anda gambarkan (lihat jsfiddle ini dan halaman dokumentasi ini ). Singkatnya: tidak ada solusi yang Anda sediakan yang berfungsi dengan baik.
Tadeck
1
Bulan saya tidak punya alasan, kesalahan yang saya buat sebelumnya dan belum belajar darinya! toStringmeskipun saya bersumpah berhasil, tapi saya menguji jsFiddle Anda dengan Chrome dan Anda benar. Dihapus dari jawaban saya. Terima kasih.
Connell
31

Menggunakan Javascript murni Anda dapat membuat prototipe format YYYYMMDD Anda sendiri ;

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
Pierre
sumber
21

Dalam JavaScript Anda bisa mendapatkan tanggal dan waktu saat ini menggunakan objek Tanggal;

var now = new Date();

Ini akan mendapatkan waktu mesin klien lokal

Contoh untuk LINK jquery

Jika Anda menggunakan jQuery DatePicker, Anda dapat menerapkannya pada bidang teks apa pun seperti ini:

$( "#datepicker" ).datepicker({dateFormat:"yy/mm/dd"}).datepicker("setDate",new Date());
Ghostman
sumber
Ini akan mendapatkan nilai waktu tanggal penuh bukan yang saya inginkan.
Sara
15

Karena pertanyaan ini ditandai sebagai JQuery:

Jika Anda juga menggunakan, JQuery UIAnda dapat menggunakan $.datepicker.formatDate():

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

Lihat demo ini .

fardjad
sumber
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;
}

Fungsi yang sangat berguna untuk menggunakannya, Selamat menikmati

Usman Younas
sumber
2
Ini bekerja dengan indah untuk mengatur nilai dan kemudian panggilan berikutnya untuk menyembunyikan pemilih tanggal memperbaikinya di setiap browser. Rapi!
nicholeous
9

Lihat ini .
The $.now()metode adalah singkatan untuk jumlah yang dikembalikan oleh ekspresi (new Date).getTime().

No_Nick777
sumber
9

Berikut adalah metode terbaik untuk mendapatkan Hari, Tahun atau Bulan saat ini

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)
Parth Jasani
sumber
7

Moment.js membuatnya sangat mudah:

moment().format("YYYY/MM/DD")
Vitalii Fedorenko
sumber
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
nithin
sumber
6

objek ini menetapkan nol, ketika elemen hanya memiliki satu simbol:

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

Objek ini mengatur waktu, jam, dan tanggal aktual:

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>

LIHAT JQUERY:

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

CONTOH

Zombyii
sumber
6

Saya tahu saya terlambat, tetapi hanya ini yang Anda butuhkan

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

toISOString () menggunakan fungsi javascript yang dibangun.

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

pengembang baru
sumber
5

Anda dapat mencapai ini dengan moment.js juga. Sertakan moment.js di html Anda.

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

Dan gunakan kode di bawah ini dalam file skrip untuk mendapatkan tanggal yang diformat.

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

Coba ini....

var d = new Date();
alert(d.getFullYear()+'/'+(d.getMonth()+1)+'/'+d.getDate());

getMonth () mengembalikan bulan 0 hingga 11 sehingga kami ingin menambahkan 1 untuk bulan yang akurat

Referensi oleh: http://www.w3schools.com/jsref/jsref_obj_date.asp

Gaurav Agrawal
sumber
3

FYI - getDay () akan memberi Anda hari dalam seminggu ... yaitu: jika hari ini Kamis, itu akan mengembalikan nomor 4 (menjadi hari ke-4 dalam seminggu).

Untuk mendapatkan hari yang tepat di bulan itu, gunakan getDate ().

Contoh saya di bawah ini ... (juga fungsi string padding untuk memberikan 0 pada elemen waktu tunggal (misalnya: 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());

Contoh output: 31/12/2013 @ 10:07:49
Jika menggunakan getDay (), output akan 4 /12/2013 @ 10:07:49

anjing gila
sumber
2

The Halaman jQuery plugin turun. Jadi secara manual:

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 );
PiNumber
sumber
2
console.log($.datepicker.formatDate('yy/mm/dd', new Date()));
Fawad Ghafoor
sumber
2
var d = new Date();

var today = d.getFullYear() + '/' + ('0'+(d.getMonth()+1)).slice(-2) + '/' + ('0'+d.getDate()).slice(-2);
Filip
sumber
Sudah diperbaiki. d.getMonth () +1 harus dihitung (= atur di antara tanda kurung) sebelum menambahkan '0' di depan string ...
Filip
2

Ini akan memberi Anda string tanggal saat ini

var today = new Date().toISOString().split('T')[0];
Sajeer Babu
sumber
1

Kamu bisa melakukan ini:

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

ATAU Sesuatu seperti

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

Anda dapat menggunakan kode ini:

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;

Anda dapat menemukan demo yang berfungsi di sini

bernte
sumber
1

Inilah yang saya buat dengan hanya menggunakan jQuery. Ini hanya masalah menyatukan potongan-potongan.

        //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;
Max Wright
sumber
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);
sunandak
sumber
Ini pada dasarnya adalah salinan dari jawaban yang diterima kecuali dalam format yang salah (d / m / y)
Rob Grzyb
0

Saya hanya ingin membagikan prototipe stempel waktu yang saya buat menggunakan ide Pierre. Tidak cukup poin untuk berkomentar :(

// 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
Bullyen
sumber
0

Menggunakan datepicker jQuery-ui, ini memiliki rutin konversi tanggal berguna sehingga Anda dapat memformat tanggal:

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

Sederhana.

Justin Levene
sumber
0

Dapatkan format Tanggal saat ini dd/mm/yyyy

Ini kodenya:

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);
sridhar
sumber
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);
Kaushik shrimali
sumber
0

Anda dapat menambahkan metode ekstensi ke javascript.

Date.prototype.today = function () {
    return ((this.getDate() < 10) ? "0" : "") + this.getDate() + "/" + (((this.getMonth() + 1) < 10) ? "0" : "") + (this.getMonth() + 1) + "/" + this.getFullYear();
}
Hasan Shouman
sumber
-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;
            }
Jaydeep Shil
sumber