Obtendo data e hora atuais em JavaScript

449

Eu tenho um script que imprime a data e hora atuais em JavaScript, mas DATEsempre está errado. Aqui está o código:

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

Deve imprimir 18/04/2012 15:07:33e imprimir3/3/2012 15:07:33

Qualquer ajuda? obrigado

Ricardo
fonte
10
Em geral, você deve ler a documentação das APIs que está usando. Aqui está alguma documentação para os objetos Data Javascript: developer.mozilla.org/en/JavaScript/Reference/Global_Objects/… . Tudo o que você precisa saber para solucionar seu problema pode ser encontrado lá.
9303 Steven Oxley
2
possível duplicata Como chegar data atual em JavaScript
Jon
@ Ricardo: MDN é uma excelente referência para este e muitos outros assuntos. Por favor, use-o.
18712 Jon
5
As pessoas sempre reclamam de certas perguntas, mas há muito poucas perguntas sobre SO que não puderam ser respondidas lendo a documentação. Eu amo este site porque ele tem respostas concisas e exemplos de como fazer o que estou tentando fazer, exatamente como esta pergunta.
Chris afiada
3
quando as pessoas pesquisam no Google por aqui, em vez do documento da API, é tão ruim compartilhar o conhecimento sem fazer as pessoas se alimentarem mal?
Mauricio Gracia Gutierrez

Respostas:

577

.getMonth()retorna um número com base em zero; para obter o mês correto, você precisa adicionar 1; portanto, a ligação .getMonth()pode retornar 4e não 5.

Portanto, no seu código, podemos usar currentdate.getMonth()+1para gerar o valor correto. Além do que, além do mais:

  • .getDate()retorna o dia do mês <- este é o que você deseja
  • .getDay()é um método separado do Dateobjeto que retornará um número inteiro que representa o dia atual da semana (0-6) 0 == Sundayetc.

portanto, seu código deve ficar assim:

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

As instâncias de data JavaScript herdam de Date.prototype. Você pode modificar o objeto de protótipo do construtor para afetar propriedades e métodos herdados pelas instâncias de data do JavaScript

Você pode usar o Dateobjeto prototype para criar um novo método que retornará a data e hora de hoje. Esses novos métodos ou propriedades serão herdados por todas as instâncias do Dateobjeto, tornando-o especialmente útil se você precisar reutilizar essa funcionalidade.

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

Você pode simplesmente recuperar a data e a hora fazendo o seguinte:

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

Ou chame o método inline para que ele simplesmente seja -

var datetime = "LastSync: " + new Date().today() + " @ " + new Date().timeNow();
Mark Walters
fonte
11
Pequena alteração por 12 horas dias & AM / PM Date.prototype.timeNow = function(){ return ((this.getHours() < 10)?"0":"") + ((this.getHours()>12)?(this.getHours()-12):this.getHours()) +":"+ ((this.getMinutes() < 10)?"0":"") + this.getMinutes() +":"+ ((this.getSeconds() < 10)?"0":"") + this.getSeconds() + ((this.getHours()>12)?('PM'):'AM'); };
Robert Speer
2
@RobertSpeer nice sugestão. Eu escrevi um método mais utilizável do objeto date desde a última atualização deste post, que chamo de now()um parâmetro booleano para determinar se deve retornar apenas a data ou a data e a hora, e também um segundo parâmetro que especifica o formato da data deve ser devolvido em isto é, dd / mm / aaaa etc
Mark Walters
1
Observe que horários como 00:04:02 serão renderizados como 0: 4: 2 na primeira sugestão, o que não foi solicitado. Para corrigir isso, pode-se acrescentar os operadores ternários da segunda sugestão: (date.getHours() < 10 ? "0" : "") + date.getHours() + ":" + (date.getMinutes() < 10 ? "0" : "") + date.getMinutes() + ":" + (date.getSeconds() < 10 ? "0" : "") + date.getSeconds();
Matt
1
Talvez um pouco âmago da questão; mas o carimbo de data / hora não deve ser armazenado em um objeto temporário para evitar a alteração da data / hora atual durante os métodos de recuperação / impressão?
SaW
1
Update: ('0' + this.getDate()).slice(-2)parece ser mais curto do que(this.getDate() < 10)?"0":"") + this.getDate()
Tân
279

Para obter hora e data, você deve usar

    new Date().toLocaleString();

>> "09/08/2014, 2:35:56 AM"

Para obter apenas a data que você deve usar

    new Date().toLocaleDateString();

>> "09/08/2014"

Para obter apenas o tempo que você deve usar

    new Date().toLocaleTimeString();

>> "2:35:56 AM"

Ou se você quiser apenas a hora no formato hh:mmsem AM / PM para inglês dos EUA

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

ou para inglês britânico

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

>> "02:35"

Leia mais aqui .

Chhorn Elit
fonte
3
isso funciona na maioria dos navegadores, mas você pode verificar a compatibilidade aqui
Quethzel Díaz
1
muito ruim você não pode obter micro / milissegundos facilmente com este
wordsforthewise
1
Mais um. Eu estava procurando uma maneira de manter os dois dígitos. Eu estava usando getHours()e getMinutes()antes, mas então você não obter o formato, 01, apenas a 1.
John
68

Para este verdadeiro estilo mysql, use esta função abaixo: 2019/02/28 15:33:12

  • Se você clicar no botão "Executar snippet de código" abaixo
  • Ele mostrará um exemplo simples de relógio digital em tempo real
  • A demonstração aparecerá abaixo do snippet de código.

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>

Daniel Lee
fonte
30

Apenas use:

var d = new Date();
document.write(d.toLocaleString());
document.write("<br>");
Steve
fonte
2
Também algo semelhante: toUTCString (). Consulte developer.mozilla.org/pt-BR/docs/Web/JavaScript/Reference/… , onde está uma lista de funções semelhantes na barra lateral.
2026 Steve Steve
11
var currentdate = new Date();

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

Altere o .getDay()método para .GetDate()e adicione um ao mês, pois conta meses a partir de 0.

Chuck Norris
fonte
5

Isso deve fazer o truque:

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();
sp00m
fonte
4

getDay()recebe o dia da semana. 3é quarta-feira. Você quer getDate(), isso retornará 18.

Também getMonth()começa em 0, você precisa adicionar 1para obter 4(abril).

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

Foguete Hazmat
fonte
4

Você precisa usar getDate () para obter a parte da data. A função getDay () retorna o número do dia (domingo = 0, segunda-feira = 1 ...) e o getMonth () retorna um índice com base em 0, portanto, você deve incrementá-lo em 1.

 var currentdate = new Date(); 

 var datetime = "Last Sync: " + currentdate.getDate() + "/"+  (parseInt(currentdate.getMonth())    + 1)
   + "/" + currentdate.getFullYear() + " @ "  
   + currentdate.getHours() + ":"  
   + currentdate.getMinutes() + ":" + currentdate.getSeconds(); 
Príncipe Escorpião
fonte
4

Encontrei a maneira mais simples de obter data e hora atual em JavaScript a partir daqui - Como obter data e hora atuais usando 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;
JoyGuru
fonte
3

obter data e hora atuais

var now = new Date(); 
  var datetime = now.getFullYear()+'/'+(now.getMonth()+1)+'/'+now.getDate(); 
  datetime += ' '+now.getHours()+':'+now.getMinutes()+':'+now.getSeconds(); 
surendar
fonte
Relata horários como 00:03:04 como 0: 3: 4.
Keir Finlow-Bates
2

.getDay retorna o dia da semana. Você precisa .getDate. .getMonth retorna valores de 0 a 11. Você precisará adicionar 1 ao resultado para obter o número do mês "humano".

Oleg V. Volkov
fonte
2

Esta pergunta é bastante antiga e as respostas também. Em vez dessas funções monstruosas, agora podemos usar o moment.js para obter a data atual, o que realmente facilita muito. Tudo o que precisa ser feito é incluir moment.js em nosso projeto e obter uma data bem formatada, por exemplo:

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

Eu acho que isso facilita a manipulação de datas em javascript.

baao
fonte
2
Que funções monstruosas - substituir oneliners ou 5 liners por vários K de código da caixa preta?
Mplungjan
2
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;
}
philippe
fonte
1
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())));
}
deepakssn
fonte
1

Este pequeno código é fácil e funciona em qualquer lugar.

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

há espaço para projetar

Varoon Ramtahal
fonte
1

Acho que estou muito atrasado para compartilhar minha resposta, mas acho que valerá a pena.

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')); // retorna às 13:30:30

Shivam Gupta
fonte
1

Eu precisava descobrir isso para uma lista de efeitos colaterais. Aqui está o que eu criei depois de pegar elementos de algumas fontes diferentes - A formatação é MM / DD / AAAA HH: 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
Bjorn Ahlstedt
fonte
1

JS básico (bom para aprender): usamos a função Date () e fazemos tudo o que precisamos para mostrar a data e o dia em nosso formato personalizado.

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


Nó JS (rápido e fácil): instale o npm pagckage usando ( npm install date-and-time ) e execute o abaixo.

let nodeDate = require('date-and-time');
let now = nodeDate.format(new Date(), 'DD-MMMM-YYYY, hh:mm:ss a');
console.log(now);
Girish Mahadevan
fonte
0
dt= new Date();
alert(dt.toISOString().substring(8,10) + "/" + 
dt.toISOString().substring(5,7)+ "/" + 
dt.toISOString().substring(0,4) + " " + 
dt.toTimeString().substring(0,8))
GraninDm
fonte
Inclua explicações sobre o que seu código faz e como ele responde à pergunta. Se você receber um trecho de código como resposta, talvez não saiba o que fazer com ele. A resposta deve fornecer ao OP e aos futuros visitantes orientações sobre como depurar e corrigir o problema. Assinalar, qual é a idéia por trás do seu código, ajuda muito no entendimento do problema e na aplicação ou modificação de sua solução.
Palec
Este código é muito primitivo para explicação. Basta executá-lo no console
GraninDm 08/08/14
É primitivo para você e agora. Que tal daqui a um ano? E para alguém que não lê JavaScript tão fluentemente quanto você? Sugiro que você adicione algo ao longo das linhas de Usar nova instância de Date. Analise os componentes da data toISOString()e inclua a hora toTimeString(). .
Palec 8/08/14
Essa abordagem não é ótima. Difícil de ler o código, envolve análise desnecessária. Por exemplo, toISOString().substring(8,10)é o mesmo que getFullYear().
Palec 8/08/14
0
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
Wasim
fonte
0

Minha resposta bem intencionada é usar esse pequeno pedaço de JS: 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
Ronnie Royston
fonte
0
var datetime = new Date().toLocaleString().slice(0,9) +" "+new Date(new Date()).toString().split(' ')[4];
console.log(datetime);
Moshood Awari
fonte
0

É simples e excelente

 $(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>

encontre o violinista abaixo para o exemplo

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

Abhilash Thomas
fonte
0

Se alguém está em busca de função

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;
}
Aman Lalpuria
fonte
-1

Verifique se pode funcionar para você

<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>
Gurpreet.Singh
fonte
-4

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

RABBIL HASAN
fonte
Você deve incluir alguns comentários e não ter apenas uma postagem apenas de código.
Codecurno