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.

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.


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());

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();

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

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());

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 .


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


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().


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)


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

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


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);


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();


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


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 );


2
var d = new Date();

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

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];

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);

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


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;

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);

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

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.


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);

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

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();
}

-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;
            }
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.