Zwróć uwagę, że .getHours () zwraca godziny w strefie czasowej komputera lokalnego. Jeśli użytkownik ma przeglądarkę w innej strefie czasowej niż Ty, otrzyma inne wyniki z getHours. Dotyczy to również metody .toString (). Kontrolowanie strefy czasowej w javascript jest trudne (musisz obliczyć przesunięcie między twoją a żądaną strefą czasową i odpowiednio zmodyfikować datę). Tak więc, jak wspomniano w innej odpowiedzi, użycie momentu.js wydaje się dobrym pomysłem. momentjs.com
Chris
2
Powinieneś także rozważyć dołączenie padStart do każdego get: dt.getMinutes (). ToString.padStart (2, '0') Zapewni to, że liczby pozostaną 2-cyfrowe z dopełnionym zerem i będzie zgodne z proponowaną funkcjonalnością javascript - tak ładna przyszłościowe: developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/…
Negative Zero
2
@NegativeZero Naprawdę przydatna (jeśli nie niezbędna) sugestia. Niestety nie działało to na mnie w Firefoksie (nie testowałem na innych przeglądarkach). Jednak przepisanie go na String (dt.getMinutes ()). PadStart (2, '0') działa dla mnie.
var d = newDate();
d+''; //"Sun Dec 08 2013 18:55:38 GMT+0100"
d.toDateString(); //"Sun Dec 08 2013"
d.toISOString(); //"2013-12-08T17:55:38.130Z"
d.toLocaleDateString() //"8/12/2013"on my system
d.toLocaleString() //"8/12/2013 18.55.38"on my system
d.toUTCString() //"Sun, 08 Dec 2013 17:55:38 GMT"
<scriptsrc="https://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js"></script><scripttype="text/javascript"src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js"></script><scripttype="text/javascript">
$(document).ready(function() {
// Making 2 variable month and dayvar monthNames = [ "January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December" ];
var dayNames= ["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]
// make single objectvar newDate = newDate();
// make current time
newDate.setDate(newDate.getDate());
// setting date and time
$('#Date').html(dayNames[newDate.getDay()] + " " + newDate.getDate() + ' ' + monthNames[newDate.getMonth()] + ' ' + newDate.getFullYear());
setInterval( function() {
// Create a newDate() object and extract the seconds of the current time on the visitor'svar seconds = newDate().getSeconds();
// Add a leading zero to seconds value
$("#sec").html(( seconds < 10 ? "0" : "" ) + seconds);
},1000);
setInterval( function() {
// Create a newDate() object and extract the minutes of the current time on the visitor'svar minutes = newDate().getMinutes();
// Add a leading zero to the minutes value
$("#min").html(( minutes < 10 ? "0" : "" ) + minutes);
},1000);
setInterval( function() {
// Create a newDate() object and extract the hours of the current time on the visitor'svar hours = newDate().getHours();
// Add a leading zero to the hours value
$("#hours").html(( hours < 10 ? "0" : "" ) + hours);
}, 1000);
});
</script><divclass="clock"><divid="Date"></div><ul><liid="hours"></li><liid="point">:</li><liid="min"></li><liid="point">:</li><liid="sec"></li></ul></div>
Zwraca liczbę sekund, które upłynęły od 1970 r., Powszechnie nazywanych (niekoniecznie poprawnie) czasem uniksowym, epoką lub datownikiem, w zależności od kręgów, w których się znajdujesz. Może być bardzo przydatne do obliczania różnicy między datami / godzinami przy użyciu prostych obliczeń . Nie ma żadnych informacji o strefie czasowej i zawsze jest UTC.
Nie ma potrzeby używania jQuery jako innego niż ten alias, niewiele więcej pomaga w manipulowaniu datą / godziną.
Jeśli szukasz szybkiego i nieczytelnego sposobu przedstawiania czasu w tekście, obiekt Date Javascript ma prototyp „toString”, który zwróci datę i godzinę w formacie ISO.
Jednak najprawdopodobniej będziesz chciał dostosować formatowanie. Obiekt Date ma możliwość wyciągnięcia odpowiednich informacji, dzięki czemu można zbudować własną reprezentację ciągu.
var d = newDate(); //without params it defaults to "now"var t = d.getHours() + ":" + d.getMinutes() + ":" + d.getSeconds();
//Will return 14:37:36
Jednak, ponieważ prosiłeś o rozwiązanie jQuery - prawdopodobnie pracujesz ze starszymi przeglądarkami. Jeśli chcesz robić bardziej szczegółowe rzeczy - zwłaszcza interpretować ciągi znaków w obiektach Date (przydatne w odpowiedziach API), możesz zajrzeć do Moment.js.
Używam momentu do wszystkich moich potrzeb związanych z manipulacją / wyświetlaniem czasu (zarówno po stronie klienta, jak i node.js, jeśli go używasz), jeśli potrzebujesz prostego formatu, powyższe odpowiedzi wystarczą, jeśli szukasz czegoś nieco bardziej złożonego, moment jest drogą do IMO.
<html><head><scripttype="text/javascript"src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script><script>functionShowLocalDate()
{
var dNow = newDate();
var localdate= (dNow.getMonth()+1) + '/' + dNow.getDate() + '/' + dNow.getFullYear() + ' ' + dNow.getHours() + ':' + dNow.getMinutes();
$('#currentDate').text(localdate)
}
</script></head><body>
enter code here
<h1>Get current local enter code here Date in JQuery</h1><labelid="currentDate">This is current local Date Time in JQuery</p><buttontype="`enter code here button onclick="ShowLocalDate()">Show Local DateTime</button></body></html>
możesz uzyskać więcej informacji z poniższego linku
Korzystając z natywnych funkcji daty JavaScript, możesz uzyskać godziny , minuty i sekundy, jak chcesz. Jeśli chcesz sformatować datę i czas w określony sposób, możesz zaimplementować metodę rozszerzającą prototyp JavaScript Date.
$.now()
ponieważ JavaScript ma natywną implementację: stackoverflow.com/questions/20456712/…Odpowiedzi:
Możesz spróbować tak:
new Date($.now());
Używając JavaScript, możesz zrobić to w następujący sposób:
var dt = new Date(); var time = dt.getHours() + ":" + dt.getMinutes() + ":" + dt.getSeconds(); document.write(time);
źródło
Musisz pobrać wszystkie „numery” ręcznie
lubię to:
var currentdate = new Date(); var datetime = "Now: " + currentdate.getDate() + "/" + (currentdate.getMonth()+1) + "/" + currentdate.getFullYear() + " @ " + currentdate.getHours() + ":" + currentdate.getMinutes() + ":" + currentdate.getSeconds(); document.write(datetime);
źródło
Konwertuj
Date
obiekt na ciąg, używając jednego z metodDate.prototype
pobierania konwersji , na przykład:var d = new Date(); d+''; // "Sun Dec 08 2013 18:55:38 GMT+0100" d.toDateString(); // "Sun Dec 08 2013" d.toISOString(); // "2013-12-08T17:55:38.130Z" d.toLocaleDateString() // "8/12/2013" on my system d.toLocaleString() // "8/12/2013 18.55.38" on my system d.toUTCString() // "Sun, 08 Dec 2013 17:55:38 GMT"
Lub, jeśli chcesz, aby był bardziej dostosowany, zobacz listę
Date.prototype
metod pobierających .źródło
Nie musisz do tego używać jQuery!
Realizacja rodzimy jest obsługa JavaScript
Date.now()
.Date.now()
i$.now()
zwróć tę samą wartość:Date.now(); // 1421715573651 $.now(); // 1421715573651
new Date(Date.now()) // Mon Jan 19 2015 20:02:55 GMT-0500 (Eastern Standard Time) new Date($.now()); // Mon Jan 19 2015 20:02:55 GMT-0500 (Eastern Standard Time)
.. i jeśli chcesz, aby godzina była sformatowana w formacie gg-mm-ss:
var now = new Date(Date.now()); var formatted = now.getHours() + ":" + now.getMinutes() + ":" + now.getSeconds(); // 20:10:58
źródło
.clock { width: 260px; margin: 0 auto; padding: 30px; color: #FFF;background:#333; } .clock ul { width: 250px; margin: 0 auto; padding: 0; list-style: none; text-align: center } .clock ul li { display: inline; font-size: 3em; text-align: center; font-family: "Arial", Helvetica, sans-serif; text-shadow: 0 2px 5px #55c6ff, 0 3px 6px #55c6ff, 0 4px 7px #55c6ff } #Date { font-family: 'Arial', Helvetica, sans-serif; font-size: 26px; text-align: center; text-shadow: 0 2px 5px #55c6ff, 0 3px 6px #55c6ff; padding-bottom: 40px; } #point { position: relative; -moz-animation: mymove 1s ease infinite; -webkit-animation: mymove 1s ease infinite; padding-left: 10px; padding-right: 10px } /* Animasi Detik Kedap - Kedip */ @-webkit-keyframes mymove { 0% {opacity:1.0; text-shadow:0 0 20px #00c6ff;} 50% {opacity:0; text-shadow:none; } 100% {opacity:1.0; text-shadow:0 0 20px #00c6ff; } } @-moz-keyframes mymove { 0% {opacity:1.0; text-shadow:0 0 20px #00c6ff;} 50% {opacity:0; text-shadow:none; } 100% {opacity:1.0; text-shadow:0 0 20px #00c6ff; } }
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js"></script> <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js"></script> <script type="text/javascript"> $(document).ready(function() { // Making 2 variable month and day var monthNames = [ "January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December" ]; var dayNames= ["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"] // make single object var newDate = new Date(); // make current time newDate.setDate(newDate.getDate()); // setting date and time $('#Date').html(dayNames[newDate.getDay()] + " " + newDate.getDate() + ' ' + monthNames[newDate.getMonth()] + ' ' + newDate.getFullYear()); setInterval( function() { // Create a newDate() object and extract the seconds of the current time on the visitor's var seconds = new Date().getSeconds(); // Add a leading zero to seconds value $("#sec").html(( seconds < 10 ? "0" : "" ) + seconds); },1000); setInterval( function() { // Create a newDate() object and extract the minutes of the current time on the visitor's var minutes = new Date().getMinutes(); // Add a leading zero to the minutes value $("#min").html(( minutes < 10 ? "0" : "" ) + minutes); },1000); setInterval( function() { // Create a newDate() object and extract the hours of the current time on the visitor's var hours = new Date().getHours(); // Add a leading zero to the hours value $("#hours").html(( hours < 10 ? "0" : "" ) + hours); }, 1000); }); </script> <div class="clock"> <div id="Date"></div> <ul> <li id="hours"></li> <li id="point">:</li> <li id="min"></li> <li id="point">:</li> <li id="sec"></li> </ul> </div>
źródło
jQuery.now()
Zwroty: liczbaOpis: Zwraca liczbę reprezentującą aktualny czas.
Ta metoda nie przyjmuje żadnych argumentów.
$.now()
Metoda jest skrótem dla liczby zwróconego przez ekspresję(new Date).getTime()
.http://api.jquery.com/jQuery.now/
Obsługa JavaScript jest prosta:
var d = new Date(); var time = d.getHours() + ":" + d.getMinutes() + ":" + d.getSeconds(); console.log(time);
źródło
$ .now () w jQuery jest aliasem nowej Date (). getTime (), wewnętrznej funkcji JavaScript.
http://api.jquery.com/jquery.now/
Zwraca liczbę sekund, które upłynęły od 1970 r., Powszechnie nazywanych (niekoniecznie poprawnie) czasem uniksowym, epoką lub datownikiem, w zależności od kręgów, w których się znajdujesz. Może być bardzo przydatne do obliczania różnicy między datami / godzinami przy użyciu prostych obliczeń . Nie ma żadnych informacji o strefie czasowej i zawsze jest UTC.
http://en.wikipedia.org/wiki/Unix_time
Nie ma potrzeby używania jQuery jako innego niż ten alias, niewiele więcej pomaga w manipulowaniu datą / godziną.
Jeśli szukasz szybkiego i nieczytelnego sposobu przedstawiania czasu w tekście, obiekt Date Javascript ma prototyp „toString”, który zwróci datę i godzinę w formacie ISO.
new Date().toString(); //returns "Thu Apr 30 2015 14:37:36 GMT+0100 (BST)"
Jednak najprawdopodobniej będziesz chciał dostosować formatowanie. Obiekt Date ma możliwość wyciągnięcia odpowiednich informacji, dzięki czemu można zbudować własną reprezentację ciągu.
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date
var d = new Date(); //without params it defaults to "now" var t = d.getHours() + ":" + d.getMinutes() + ":" + d.getSeconds(); //Will return 14:37:36
Jednak, ponieważ prosiłeś o rozwiązanie jQuery - prawdopodobnie pracujesz ze starszymi przeglądarkami. Jeśli chcesz robić bardziej szczegółowe rzeczy - zwłaszcza interpretować ciągi znaków w obiektach Date (przydatne w odpowiedziach API), możesz zajrzeć do Moment.js.
http://momentjs.com/
Zapewni to kompatybilność z różnymi przeglądarkami i znacznie poprawiło formatowanie bez konieczności łączenia wielu ciągów razem! Na przykład:
moment().format('hh:mm:ss'); //Will return 14:37:36
źródło
Używam momentu do wszystkich moich potrzeb związanych z manipulacją / wyświetlaniem czasu (zarówno po stronie klienta, jak i node.js, jeśli go używasz), jeśli potrzebujesz prostego formatu, powyższe odpowiedzi wystarczą, jeśli szukasz czegoś nieco bardziej złożonego, moment jest drogą do IMO.
źródło
<html> <head> <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"> </script> <script> function ShowLocalDate() { var dNow = new Date(); var localdate= (dNow.getMonth()+1) + '/' + dNow.getDate() + '/' + dNow.getFullYear() + ' ' + dNow.getHours() + ':' + dNow.getMinutes(); $('#currentDate').text(localdate) } </script> </head> <body> enter code here <h1>Get current local enter code here Date in JQuery</h1> <label id="currentDate">This is current local Date Time in JQuery</p> <button type="`enter code here button onclick="ShowLocalDate()">Show Local DateTime</button> </body> </html>
możesz uzyskać więcej informacji z poniższego linku
http://www.morgantechspace.com/2013/11/Get-current-Date-time-in-JQuery.html#GetLocalDateTimeinJQuery
źródło
Próbować
console.log( new Date().toLocaleString().slice(9, -3) , new Date().toString().slice(16, -15) );
źródło
Korzystając z natywnych funkcji daty JavaScript, możesz uzyskać godziny , minuty i sekundy, jak chcesz. Jeśli chcesz sformatować datę i czas w określony sposób, możesz zaimplementować metodę rozszerzającą prototyp JavaScript Date.
Oto jeden już zaimplementowany: https://github.com/jacwright/date.format
źródło
Aby uzyskać czas lokalny w
ISO8601
SQL,TIMESTAMP
możesz spróbować:var tzoffset = (new Date()).getTimezoneOffset() * 60000; var localISOTime = (new Date(Date.now() - tzoffset)) .toISOString() .slice(0, 19) .replace('T', ' '); $('#mydatediv').val(localISOTime);
źródło
console.log( new Date().toLocaleString().slice(9, -3) , new Date().toString().slice(16, -15) );
źródło
<p id="date"></p> <script> var d = new Date(); document.getElementById("date").innerHTML = d.toTimeString(); </script>
Możesz użyć Date () w JS.
źródło
Następujące
function gettzdate(){ var fd = moment().format('YYYY-MM-DDTHH:MM:ss'); return fd ; }
działa na rzecz wymuszenia aktualnej daty na
<input type="datetime-local">
źródło