Huidige datum en tijd ophalen in JavaScript

Ik heb een script dat de huidige datum en tijd in JavaScript afdrukt, maar de Dateis altijd verkeerd. Hier is de code:

var currentdate = new Date();
var datetime = "Last Sync: " + currentdate.getDay() + "/" + currentdate.getMonth() 
+ "/" + currentdate.getFullYear() + " @ " 
+ currentdate.getHours() + ":" 
+ currentdate.getMinutes() + ":" + currentdate.getSeconds();

Het zou 18/04/2012 15:07:33moeten afdrukken en 3/3/2012 15:07:33

moeten afdrukken


Antwoord 1, autoriteit 100%

.getMonth()retourneert een op nul gebaseerd getal, dus om de juiste maand te krijgen moet je 1 optellen, dus als je .getMonth()in mei belt, krijg je 4en niet 5.

Dus in uw code kunnen we currentdate.getMonth()+1gebruiken om de juiste waarde uit te voeren. Daarnaast:

  • .GetDate()geeft de dag van de maand terug <- dit is degene die je zoekt
  • .getDay()is een aparte methode van het Dateobject dat een geheel getal retourneert dat de huidige dag van de week (0-6) vertegenwoordigt 0 == Sundayenz

dus uw code zou er als volgt uit moeten zien:

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

JavaScript Date-instanties erven van Date.prototype. U kunt het prototypeobject van de constructor wijzigen om eigenschappen en methoden te beïnvloeden die zijn overgenomen door JavaScript Date-instanties

U kunt het prototype-object Dategebruiken om een nieuwe methode te maken die de datum en tijd van vandaag retourneert. Deze nieuwe methoden of eigenschappen worden overgenomen door alle instanties van het Date-object, waardoor het vooral handig is als u deze functionaliteit opnieuw moet gebruiken.

// For todays date;
Date.prototype.today = function () { 
    return ((this.getDate() < 10)?"0":"") + this.getDate() +"/"+(((this.getMonth()+1) < 10)?"0":"") + (this.getMonth()+1) +"/"+ this.getFullYear();
}
// For the time now
Date.prototype.timeNow = function () {
     return ((this.getHours() < 10)?"0":"") + this.getHours() +":"+ ((this.getMinutes() < 10)?"0":"") + this.getMinutes() +":"+ ((this.getSeconds() < 10)?"0":"") + this.getSeconds();
}

U kunt dan eenvoudig de datum en tijd ophalen door het volgende te doen:

var newDate = new Date();
var datetime = "LastSync: " + newDate.today() + " @ " + newDate.timeNow();

Of roep de methode inline aan zodat het gewoon –

. is

var datetime = "LastSync: " + new Date().today() + " @ " + new Date().timeNow();

Antwoord 2, autoriteit 54%

Om tijd en datum te krijgen, moet u

. gebruiken

   new Date().toLocaleString();
>> "09/08/2014, 2:35:56 AM"

Om alleen de datum te krijgen die je moet gebruiken

   new Date().toLocaleDateString();
>> "09/08/2014"

Om alleen de tijd te krijgen die je zou moeten gebruiken

   new Date().toLocaleTimeString();
>> "2:35:56 AM"

Of als u alleen de tijd wilt in de notatie hh:mmzonder AM/PM voor Amerikaans Engels

   new Date().toLocaleTimeString('en-US', { hour12: false, 
                                             hour: "numeric", 
                                             minute: "numeric"});
>> "02:35"

of voor Brits Engels

   new Date().toLocaleTimeString('en-GB', { hour: "numeric", 
                                             minute: "numeric"});
>> "02:35"

Lees hier.


Antwoord 3, autoriteit 11%

Voor echte uitvoer in mysql-stijl gebruikt u deze functie hieronder: 2019/02/28 15:33:12

  • Als u hieronder op de knop ‘Codefragment uitvoeren’ klikt
  • Het toont u een eenvoudig realtime digitaal klokvoorbeeld
  • De demo verschijnt onder het codefragment.
function getDateTime() {
        var now     = new Date(); 
        var year    = now.getFullYear();
        var month   = now.getMonth()+1; 
        var day     = now.getDate();
        var hour    = now.getHours();
        var minute  = now.getMinutes();
        var second  = now.getSeconds(); 
        if(month.toString().length == 1) {
             month = '0'+month;
        }
        if(day.toString().length == 1) {
             day = '0'+day;
        }   
        if(hour.toString().length == 1) {
             hour = '0'+hour;
        }
        if(minute.toString().length == 1) {
             minute = '0'+minute;
        }
        if(second.toString().length == 1) {
             second = '0'+second;
        }   
        var dateTime = year+'/'+month+'/'+day+' '+hour+':'+minute+':'+second;   
         return dateTime;
    }
    // example usage: realtime clock
    setInterval(function(){
        currentTime = getDateTime();
        document.getElementById("digital-clock").innerHTML = currentTime;
    }, 1000);
<div id="digital-clock"></div>

Antwoord 4, autoriteit 5%

Gebruik gewoon:

var d = new Date();
document.write(d.toLocaleString());
document.write("<br>");

Antwoord 5, autoriteit 2%

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

Verander de methode .getDay()in .GetDate()en voeg een toe aan de maand, want het telt maanden vanaf 0.


Antwoord 6, autoriteit 2%

Kortste

Ik ontwikkel Steve antwoordom precies te krijgen wat OP nodig heeft

new Date().toLocaleString().replace(',','')

Antwoord 7

Dit zou het moeten doen:

function dateToString(date) {
    var month = date.getMonth() + 1;
    var day = date.getDate();
    var dateOfString = (("" + day).length < 2 ? "0" : "") + day + "/";
    dateOfString += (("" + month).length < 2 ? "0" : "") + month + "/";
    dateOfString += date.getFullYear();
    return dateOfString;
}
var currentdate = new Date();
var datetime = "Last Sync: ";
datetime += dateToString(currentdate );
datetime += + currentdate.getHours() + ":"
            + currentdate.getMinutes() + ":"
            + currentdate.getSeconds();

Antwoord 8

Basic JS (goed om te leren): we gebruiken de functie Date() en doen er alles aan om de datum en dag in ons aangepaste formaat weer te geven.

var myDate = new Date();
let daysList = ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'];
let monthsList = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Aug', 'Oct', 'Nov', 'Dec'];
let date = myDate.getDate();
let month = monthsList[myDate.getMonth()];
let year = myDate.getFullYear();
let day = daysList[myDate.getDay()];
let today = `${date} ${month} ${year}, ${day}`;
let amOrPm;
let twelveHours = function (){
    if(myDate.getHours() > 12)
    {
        amOrPm = 'PM';
        let twentyFourHourTime = myDate.getHours();
        let conversion = twentyFourHourTime - 12;
        return `${conversion}`
    }else {
        amOrPm = 'AM';
        return `${myDate.getHours()}`}
};
let hours = twelveHours();
let minutes = myDate.getMinutes();
let currentTime = `${hours}:${minutes} ${amOrPm}`;
console.log(today + ' ' + currentTime);

Antwoord 9

Ik heb hier de eenvoudigste manier gevonden om de huidige datum en tijd in JavaScript te krijgen – De huidige datum en tijd ophalen met JavaScript

var today = new Date();
var date = today.getFullYear()+'-'+(today.getMonth()+1)+'-'+today.getDate();
var time = today.getHours() + ":" + today.getMinutes() + ":" + today.getSeconds();
var CurrentDateTime = date+' '+time;

Antwoord 10

getDay()krijgt de dag van de week. 3is woensdag. U wilt getDate(), dat 18teruggeeft.

Ook getMonth()begint bij 0, je moet 1toevoegen om 4te krijgen (april) .

DEMO: http://jsfiddle.net/4zVxp/


Antwoord 11

Je moet getDate() gebruiken om het datumgedeelte te krijgen. De functie getDay() retourneert het dagnummer (zondag = 0, maandag = 1…), en de getMonth() retourneert een op 0 gebaseerde index, dus u moet deze met 1 verhogen.

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

Antwoord 12

huidige datum en tijd ophalen

var now = new Date(); 
  var datetime = now.getFullYear()+'/'+(now.getMonth()+1)+'/'+now.getDate(); 
  datetime += ' '+now.getHours()+':'+now.getMinutes()+':'+now.getSeconds(); 

Antwoord 13

Deze vraag is vrij oud en de antwoorden ook. In plaats van die monsterlijke functies, kunnen we nu moment.js gebruiken om de huidige datum te krijgen, wat het eigenlijk heel gemakkelijk maakt. Het enige dat u hoeft te doen, is moment.jsopnemen in ons project en een goed opgemaakte datum krijgen, bijvoorbeeld door:

moment().format("dddd, MMMM Do YYYY, h:mm:ss a");

Ik denk dat dat het veel gemakkelijker maakt om datums in javascript te verwerken.


Antwoord 14

.getDay retourneert de dag van de week. Je hebt in plaats daarvan .getDate nodig.
.getMonth retourneert waarden van 0 tot 11. Je moet 1 optellen bij het resultaat om een “menselijk” maandnummer te krijgen.


Antwoord 15

function getTimeStamp() {
       var now = new Date();
       return ((now.getMonth() + 1) + '/' + (now.getDate()) + '/' + now.getFullYear() + " " + now.getHours() + ':'
                     + ((now.getMinutes() < 10) ? ("0" + now.getMinutes()) : (now.getMinutes())) + ':' + ((now.getSeconds() < 10) ? ("0" + now
                     .getSeconds()) : (now.getSeconds())));
}

Antwoord 16

Deze kleine code is eenvoudig en werkt overal.

<p id="dnt"></p>
<script>
document.getElementById("dnt").innerHTML = Date();
</script>

er is ruimte om te ontwerpen


Antwoord 17

function UniqueDateTime(format='',language='en-US'){
    //returns a meaningful unique number based on current time, and milliseconds, making it virtually unique
    //e.g : 20170428-115833-547
    //allows personal formatting like more usual :YYYYMMDDHHmmSS, or YYYYMMDD_HH:mm:SS
    var dt = new Date();
    var modele="YYYYMMDD-HHmmSS-mss";
    if (format!==''){
      modele=format;
    }
    modele=modele.replace("YYYY",dt.getFullYear());
    modele=modele.replace("MM",(dt.getMonth()+1).toLocaleString(language, {minimumIntegerDigits: 2, useGrouping:false}));
    modele=modele.replace("DD",dt.getDate().toLocaleString(language, {minimumIntegerDigits: 2, useGrouping:false}));
    modele=modele.replace("HH",dt.getHours().toLocaleString(language, {minimumIntegerDigits: 2, useGrouping:false}));
    modele=modele.replace("mm",dt.getMinutes().toLocaleString(language, {minimumIntegerDigits: 2, useGrouping:false}));
    modele=modele.replace("SS",dt.getSeconds().toLocaleString(language, {minimumIntegerDigits: 2, useGrouping:false}));
    modele=modele.replace("mss",dt.getMilliseconds().toLocaleString(language, {minimumIntegerDigits: 3, useGrouping:false}));
    return modele;
}

Antwoord 18

var datetime = new Date().toLocaleString().slice(0,9) +" "+new Date(new Date()).toString().split(' ')[4];
console.log(datetime);

Antwoord 19

Ik denk dat ik erg laat ben om mijn antwoord te delen, maar ik denk dat het de moeite waard zal zijn.

function __getCurrentDateTime(format){
    var dt=new Date(),x,date=[];
    date['d']=dt.getDate();
    date['dd']=dt.getDate()>10?dt.getDate():'0'+dt.getDate();
    date['m']=dt.getMonth()+1;
    date['mm']=(dt.getMonth()+1)>10?(dt.getMonth()+1):'0'+(dt.getMonth()+1);
    date['yyyy']=dt.getFullYear();
    date['yy']=dt.getFullYear().toString().slice(-2);
    date['h']=(dt.getHours()>12?dt.getHours()-12:dt.getHours());
    date['hh']=dt.getHours();
    date['mi']=dt.getMinutes();
    date['mimi']=dt.getMinutes()<10?('0'+dt.getMinutes()):dt.getMinutes();
    date['s']=dt.getSeconds();
    date['ss']=dt.getSeconds()<10?('0'+dt.getSeconds()):dt.getSeconds();
    date['sss']=dt.getMilliseconds();
    date['ampm']=(dt.getHours()>=12?'PM':'AM');
    x=format.toLowerCase();
    x=x.indexOf('dd')!=-1?x.replace(/(dd)/i,date['dd']):x.replace(/(d)/i,date['d']);
    x=x.indexOf('mm')!=-1?x.replace(/(mm)/i,date['mm']):x.replace(/(m)/i,date['m']);
    x=x.indexOf('yyyy')!=-1?x.replace(/(yyyy)/i,date['yyyy']):x.replace(/(yy)/i,date['yy']);
    x=x.indexOf('hh')!=-1?x.replace(/(hh)/i,date['hh']):x.replace(/(h)/i,date['h']);
    x=x.indexOf('mimi')!=-1?x.replace(/(mimi)/i,date['mimi']):x.replace(/(mi)/i,date['mi']);
    if(x.indexOf('sss')!=-1){   x=x.replace(/(sss)/i,date['sss']);  }
    x=x.indexOf('ss')!=-1?x.replace(/(ss)/i,date['ss']):x.replace(/(s)/i,date['s']);
    if(x.indexOf('ampm')!=-1){  x=x.replace(/(ampm)/i,date['ampm']);    }
    return x;
}
console.log(__getCurrentDateTime());  //returns in dd-mm-yyyy HH:MM:SS
console.log(__getCurrentDateTime('dd-mm-yyyy'));    //return in 05-12-2016
console.log(__getCurrentDateTime('dd/mm*yyyy'));    //return in 05/12*2016
console.log(__getCurrentDateTime('hh:mimi:ss'));    //return in 13:05:30

console.log(__getCurrentDateTime(‘h:mi:ss ampm’)); //terug over 13:5:30


Antwoord 20

Ik moest dit uitzoeken voor een lei in after effects. Dit is wat ik bedacht na het nemen van elementen uit een paar verschillende bronnen — Opmaak is MM/DD/YYYY UU:MM AM/PM

D = new Date(Date(00));
M = D.getMonth()+1;
H = D.getHours();
Mi = D.getMinutes();
N = "AM"
if (H >= 12)
N = "PM"
if (H > 12)
{
H = H-12
}
amtOfZeroes = 2;
isNeg = false;
if (M < 0)
{
M = Math.abs(M);
isNeg = true;
}
Mo = Math.round(M) + "";
while(Mo.length < amtOfZeroes)
{
Mo = "0" + Mo; 
}
if (isNeg)
Mo = "-" + Mo;
if (H < 0)
{
H = Math.abs(H);
isNeg = true;
}
Ho = Math.round(H) + "";
while(Ho.length < amtOfZeroes)
{
Ho = "0" + Ho; 
}
if (isNeg)
Ho = "-" + Ho;
if (Mi < 0)
{
Mi = Math.abs(Mi);
isNeg = true;
}
Min = Math.round(Mi) + "";
while(Min.length < amtOfZeroes)
{
Min = "0" + Min; 
}
if (isNeg)
Min = "-" + Min;
T = Ho + ":" + (Min)
Mo + "/" + D.getDate() + "/" + D.getFullYear() + "  " + T + " " + N

Antwoord 21

dt= new Date();
alert(dt.toISOString().substring(8,10) + "/" + 
dt.toISOString().substring(5,7)+ "/" + 
dt.toISOString().substring(0,4) + " " + 
dt.toTimeString().substring(0,8))

Antwoord 22

function display_c(){   
    var refresh = 1000; // Refresh rate in milli seconds    
    mytime = setTimeout('display_ct()', refresh)    
}
function display_ct() {
    var strcount    
    var currentdate = new Date();
    document.getElementById('ct').innerHTML = currentdate.toDateString() + " " + currentdate.getHours() + ":" + currentdate.getMinutes() + ":" + currentdate.getSeconds();
    tt = display_c();   
}
id = 'ct'     // Replace in Your id
onload = "display_ct();"     // Type inside a Body Tag

Antwoord 23

Mijn goedbedoelde antwoord is om dit kleine stukje JS te gebruiken: https://github.com/rhroyston /clock-js

clock.now   --> 1462248501241
clock.time  --> 11:08 PM
clock.weekday   --> monday
clock.day   --> 2
clock.month --> may
clock.year  --> 2016
clock.since(1462245888784)  --> 44 minutes
clock.until(1462255888784)  --> 2 hours
clock.what.time(1462245888784)  --> 10:24 PM
clock.what.weekday(1461968554458)   --> friday
clock.what.day('14622458887 84')    --> 2
clock.what.month(1461968554458) --> april
clock.what.year('1461968554458')    --> 2016
clock.what.time()   --> 11:11 PM
clock.what.weekday('14619685abcd')  -->     clock.js error : expected unix timestamp as argument
clock.unit.seconds  --> 1000
clock.unit.minutes  --> 60000
clock.unit.hours    --> 3600000
clock.unit.days --> 86400000
clock.unit.weeks    --> 604800000
clock.unit.months   --> 2628002880
clock.unit.years    --> 31536000000

Antwoord 24

Het is eenvoudig en fantastisch

$(document).ready(function () { 
            var fpsOut = document.getElementById('myTime');
            setInterval(function () {
                var d = new Date(); 
                fpsOut.innerHTML = d;
            }, 1000);
        });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="myTime"></div>

Antwoord 25

Als iemand op zoek is naar een functie

console.log(formatAMPM());
function formatAMPM() {
  var date = new Date();
  var hours = date.getHours();
  var minutes = date.getMinutes();
  var seconds = date.getSeconds();
  var ampm = hours >= 12 ? 'PM' : 'AM';
  hours = hours % 12;
  hours = hours ? hours : 12; // the hour '0' should be '12'
  minutes = minutes < 10 ? '0'+minutes : minutes;
  return strTime = date.getMonth() + '/' + date.getDay()+'/'+date.getFullYear()+' '+ hours + ':' + minutes +':'+ seconds + " " +ampm;
}

Antwoord 26

Hier is mijn werk de klok rond op volledig formaat met dag, datum, jaar en tijd
en zorg ervoor dat de datum van uw pc is ingesteld op de juiste datum en als u PHP gebruikt, zorg er dan voor dat in php.ini date.timezone= xx waar xx uw huidige tijdzone is

function startTime()
{
    var today=new Date();
    //                   1    2    3    4    5    6    7    8    9   10    11  12   13   14   15   16   17   18   19   20   21   22   23   24   25   26   27   28   29   30   31   32   33
    var suffixes = ['','st','nd','rd','th','th','th','th','th','th','th','th','th','th','th','th','th','th','th','th','th','st','nd','rd','th','th','th','th','th','th','th','st','nd','rd'];
    var weekday = new Array(7);
    weekday[0] = "Sunday";
    weekday[1] = "Monday";
    weekday[2] = "Tuesday";
    weekday[3] = "Wednesday";
    weekday[4] = "Thursday";
    weekday[5] = "Friday";
    weekday[6] = "Saturday";
    var month = new Array(12);
    month[0] = "January";
    month[1] = "February";
    month[2] = "March";
    month[3] = "April";
    month[4] = "May";
    month[5] = "June";
    month[6] = "July";
    month[7] = "August";
    month[8] = "September";
    month[9] = "October";
    month[10] = "November";
    month[11] = "December";
    document.getElementById('txt').innerHTML=(weekday[today.getDay()] + ',' + " " + today.getDate()+'<sup>'+suffixes[today.getDate()]+'</sup>' + ' of' + " " + month[today.getMonth()] + " " + today.getFullYear() + ' Time Now ' + today.toLocaleTimeString());
    t=setTimeout(function(){startTime()},500);
}
<style>
sup {
        vertical-align: super;
        font-size: smaller;
    }
</style>
<html>
<body onload="startTime()">
<div id="txt"></div>
</body>
</html>

Antwoord 27

Kijk hier eens naar, misschien werkt het voor jou

<script language="JavaScript">
var dayarray=new Array("Sunday","Monday",
 "Tuesday","Wednesday","Thursday","Friday","Saturday")
var montharray=new Array("January","February","March",
 "April","May","June","July","August","September",
 "October","November","December")
function getthedate(){
var mydate=new Date()
var year=mydate.getYear()
if (year < 1000)
year+=1900
var day=mydate.getDay()
var month=mydate.getMonth()
var daym=mydate.getDate()
if (daym<10)
daym="0"+daym
var hours=mydate.getHours()
var minutes=mydate.getMinutes()
var seconds=mydate.getSeconds()
var dn="AM"
if (hours>=12)
dn="PM"
if (hours>12){
hours=hours-12
}
if (hours==0)
hours=12
if (minutes<=9)
minutes="0"+minutes
if (seconds<=9)
seconds="0"+seconds
//change font size here
var cdate="<small><font color='000000' face='Arial'><b>"+dayarray[day]+", 
    "+montharray[month]+" "+daym+", "+year+" "+hours+":"
 +minutes+":"+seconds+" "+dn
    +"</b></font></small>"
if (document.all)
document.all.clock.innerHTML=cdate
else if (document.getElementById)
document.getElementById("clock").innerHTML=cdate
else
document.write(cdate)
}
 if (!document.all&&!document.getElementById)
  getthedate()
  function goforit(){
  if (document.all||document.getElementById)
 setInterval("getthedate()",1000)
}
 </script>
enter code here
 <span id="clock"></span>

Antwoord 28

<p id="DateTimeBox">Click The Button To Show Date And Time</p>
<button onclick="ShowDate();"> Show Date </button>
<script>
  function ShowDate() {
    document.getElementById('DateTimeBox').innerHTML = Date();
  }
</script>

Other episodes