Formatta la data JavaScript come aaaa-mm-gg


382

Ho un appuntamento con il formato Sun May 11,2014. Come posso convertirlo in 2014-05-11JavaScript?

function taskDate(dateMilli) {
    var d = (new Date(dateMilli) + '').split(' ');
    d[2] = d[2] + ',';

    return [d[0], d[1], d[2], d[3]].join(' ');
}

var datemilli = Date.parse('Sun May 11,2014');
console.log(taskDate(datemilli));

Il codice di cui sopra mi dà lo stesso formato della data, sun may 11,2014. Come posso risolvere questo problema?


7
Dubito che il codice sopra ti dia nient'altro che un errore di sintassi.
Plalx,

Prendi davvero in considerazione l'uso di una libreria come Moment.js. Formatterà nel risultato desiderato :)
Ankur,

5
Perché usare una libreria quando 5 righe di codice possono fare il lavoro? @Ankur
Black Mamba,


Correlati: Cosa sono le stringhe di data e ora valide in JavaScript? "Sun May 11,2014" non è una stringa di date valida e l'analisi potrebbe non riuscire in alcuni browser.
str

Risposte:


524

Tu puoi fare:

function formatDate(date) {
    var d = new Date(date),
        month = '' + (d.getMonth() + 1),
        day = '' + d.getDate(),
        year = d.getFullYear();

    if (month.length < 2) 
        month = '0' + month;
    if (day.length < 2) 
        day = '0' + day;

    return [year, month, day].join('-');
}

Esempio di utilizzo:

alert(formatDate('Sun May 11,2014'));

Produzione:

2014-05-11

Demo su JSFiddle: http://jsfiddle.net/abdulrauf6182012/2Frm3/


11
Dichiarazioni di variabili davvero multiple nella stessa istruzione? stackoverflow.com/questions/694102/...
bhspencer

8
@ Fuser97381 Dichiarazioni di variabili multiple nella stessa affermazione sono più di una semplice preferenza di stile estetico. È una pratica pericolosa. Se inavvertitamente non si riesce ad aggiungere una virgola dopo ogni dichiarazione si finisce per creare variabili globali. Non qualcosa che dovrebbe essere incoraggiato su quella che potrebbe diventare la risposta canonica a una domanda.
bhspencer,

6
'use strict';@bhspencer
Vix,

3
La riformattazione di una stringa di data non dovrebbe dipendere dal corretto analisi delle stringhe non standard da parte del parser incorporato. Dato il formato OP, può essere riformattato con meno codice senza usare una data.
RobG

Come aumentare di più di 30 giorni nell'intervallo 1 ~ 31?
Steve Angello,

456

Sfrutta solo il toISOStringmetodo integrato che porta la tua data nel formato ISO 8601:

yourDate.toISOString().split('T')[0]

Dove yourDate è l'oggetto data.

Modifica: qualche ragazzo ha scritto questo per gestire il fuso orario nei commenti:

const offset = yourDate.getTimezoneOffset()
yourDate = new Date(yourDate.getTime() + (offset*60*1000))
return yourDate.toISOString().split('T')[0]

239
ATTENZIONE con questo metodo poiché viene convertito per la prima volta in data UTC. Se ti trovi in ​​un fuso orario + e la tua porzione di tempo è nelle prime ore del giorno, potrebbe tornare indietro di un giorno. In alternativa, se ti trovi in ​​un fuso orario - e la tua porzione di tempo è in ritardo nella giornata, potrebbe spostarsi in avanti di un giorno.
Luke Baulch,

4
Prova invece questo:new Date(yourDateStr).toISOString().split('T')[0]
exbuddha,

24
const offset = yourDate.getTimezoneOffset(); yourDate = new Date(yourDate.getTime() + (offset*60*1000)); yourDate.toISOString().split('T')[0] questo dovrebbe risolvere il problema del fuso orario
mjwrazor,

5
now.toISOString().substring(0,10); Questa è un'alternativa più pulita, poiché ti ricorda che YYYY-MM-DDsono i primi dieci caratteri del formato iso completo
Gutimore,

4
Nota: utilizzando l'utile soluzione commentata da @mjwrazor, ho dovuto sottrarre invece di aggiungere l'offset per ottenere la data corretta (cambia + (offsetin a - (offset)
rococò

135

Uso questo modo per ottenere la data nel formato aaaa-mm-gg :)

var todayDate = new Date().toISOString().slice(0,10);

14
Come gestisci il cambio di data di un giorno come indicato qui da @Luke_Baulch?
Malvineous,

7
Puoi farlo: var todayDate = new Date (); todayDate.setMinutes (todayDate.getMinutes () - todayDate.getTimezoneOffset ()); . todayDate.toISOString () slice (0,10); Ciò dovrebbe aiutare a evitare il problema UTC.
Fernando Aguilar,

1
@FernandoAguilar Un dubbio però, come facciamo a sapere se dobbiamo sottrarre l'offset o aggiungerlo?
whyAto8

var todayDate = new Date(2018, 3 - 1, 26); todayDate.toISOString().slice(0, 10);mi dà "2018-03-25". Su un altro sistema var todayDate = new Date(2018, 3 - 1, 26, 17, 0, 0); todayDate.toISOString().slice(0, 10);mi dà "2018-03-27".
Salman A

2
Non sempre funziona. A volte sottrae un giorno a causa della conversione UTC.
NickG

110

Il modo più semplice per convertire la tua data nel formato aaaa-mm-gg è fare questo:

var date = new Date("Sun May 11,2014");
var dateString = new Date(date.getTime() - (date.getTimezoneOffset() * 60000 ))
                    .toISOString()
                    .split("T")[0];

Come funziona:

  • new Date("Sun May 11,2014")converte la stringa "Sun May 11,2014"in un oggetto data che rappresenta l'ora Sun May 11 2014 00:00:00in un fuso orario in base alla locale corrente (impostazioni del sistema host)
  • new Date(date.getTime() - (date.getTimezoneOffset() * 60000 ))converte la tua data in un oggetto data che corrisponde all'ora Sun May 11 2014 00:00:00in UTC (ora standard) sottraendo l'offset del fuso orario
  • .toISOString() converte l'oggetto data in una stringa ISO 8601 2014-05-11T00:00:00.000Z
  • .split("T") divide la stringa in array ["2014-05-11", "00:00:00.000Z"]
  • [0] prende il primo elemento di quell'array

dimostrazione

var date = new Date("Sun May 11,2014");
var dateString = new Date(date.getTime() - (date.getTimezoneOffset() * 60000 ))
                    .toISOString()
                    .split("T")[0];

console.log(dateString);


20
Nessun altro è stupito che questo sia il modo più semplice ??
gap

.toISOString () non funziona correttamente con l'ora legale.
Idee di Joe,

2
@JoeDevmon: non vedo quanto sia rilevante qui. Il - (date.getTimezoneOffset() * 60000 )bit dovrebbe eliminare eventuali differenze di fuso orario, incluso l'impatto dell'ora legale.
John Slegers,

2
@JohnSlegers è quello che stavo pensando, ma in alcuni casi stavo ancora ricevendo il giorno prima. Ho eseguito il refactoring e il tuo esempio funziona ora. Devo aver avuto una strana stringa di date o qualcosa del genere. Grazie per essere rimasto fedele e averlo sottolineato. +1 👍
Idee di Joe

2
Ho cercato in alto e in basso su SO e altri siti per trovare il modo migliore per affrontare i problemi del fuso orario con le date in JS, e in fondo, questo è di gran lunga il più semplice e il migliore. Grazie!
Hartley,

34
format = function date2str(x, y) {
    var z = {
        M: x.getMonth() + 1,
        d: x.getDate(),
        h: x.getHours(),
        m: x.getMinutes(),
        s: x.getSeconds()
    };
    y = y.replace(/(M+|d+|h+|m+|s+)/g, function(v) {
        return ((v.length > 1 ? "0" : "") + eval('z.' + v.slice(-1))).slice(-2)
    });

    return y.replace(/(y+)/g, function(v) {
        return x.getFullYear().toString().slice(-v.length)
    });
}

Risultato:

format(new Date('Sun May 11,2014'), 'yyyy-MM-dd')
"2014-05-11

1
Mi piace l'ulteriore flessibilità che questa soluzione offre alle altre risposte a questa domanda. Non l'ho ancora testato a fondo, ma per il formato desiderato (es. "Aaaa-MM-gg hh: mm: ss"), funziona esattamente come previsto.
porco

3
Potresti evitarlo facilmente eval.
Salman A

3
ecco una versione che evita l'eval e commenta meglio jsfiddle.net/8904cmLd/2
m1m1k

2
Ho beneficiato di questa risposta. Ho sostituito quella riga con la dichiarazione eval areturn ((v.length > 1 ? "0" : "") + z[v.slice(-1)]).slice(-2);
JesusIsMyDriver.dll il

26

Una combinazione di alcune delle risposte:

var d = new Date(date);
date = [
  d.getFullYear(),
  ('0' + (d.getMonth() + 1)).slice(-2),
  ('0' + d.getDate()).slice(-2)
].join('-');

Mi piace la soluzione la migliore - facile da leggere, e non fa affidamento sulle toISOString()potenziali insidie ​​del fuso orario con l'uso di quella funzione.
matt.fc

questo è il primo a non farmi male al cervello.
ckapilla,

22

Se non hai nulla contro l'uso delle librerie, puoi semplicemente usare la libreria Moments.js in questo modo:

var now = new Date();
var dateString = moment(now).format('YYYY-MM-DD');

var dateStringWithTime = moment(now).format('YYYY-MM-DD HH:mm:ss');
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.18.1/moment.min.js"></script>


Ottima soluzione, ma è un pacchetto da 300kb
Adam,

13

Basta usare questo:

var date = new Date('1970-01-01'); // Or your date here
console.log((date.getMonth() + 1) + '/' + date.getDate() + '/' +  date.getFullYear());

Semplice e dolce;)


4
l'imbottitura non è disponibile per il formato a 2 lettere. mostrerà una singola cifra se la data o il mese è inferiore a 10, ecco perché non è possibile utilizzarlo direttamente.
Yatender Singh,

sì, ma può essere raggiunto semplicemente usando JavaScript, è totalmente all'altezza delle tue esigenze, penso di sì, no? @YatenderSingh
Pardeep Jain

4
sì, corretto, ma controlla il titolo della domanda "aaaa-mm-gg" che vuole :)
Yatender Singh

var old_date = new Date (date); var new_date = old_date.getFullYear () + '-' + (old_date.getMonth () + 1) + '-' + old_date.getDate ()
Sitti Munirah Abdul Razak il

1
Grande. Funzionava ed era semplice e conciso!
Waleed93,

12

toISOString()presume che la tua data sia l'ora locale e la converte in UTC. Otterrai una stringa di data errata.

Il seguente metodo dovrebbe restituire ciò di cui hai bisogno.

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

Fonte: https://blog.justin.kelly.org.au/simple-javascript-function-to-format-the-date-as-yyyy-mm-dd/


9

Recupera anno, mese e giorno, quindi mettili insieme. Dritto, semplice e preciso.

function formatDate(date) {
    var year = date.getFullYear().toString();
    var month = (date.getMonth() + 101).toString().substring(1);
    var day = (date.getDate() + 100).toString().substring(1);
    return year + "-" + month + "-" + day;
}

//Usage example:
alert(formatDate(new Date()));


9

È possibile utilizzare toLocaleDateString('fr-CA')su Dateoggetti

console.log(new Date('Sun May 11,2014').toLocaleDateString('fr-CA'));

Ho anche scoperto che quelle localizzazioni danno il giusto risultato da questo elenco delle locales Elenco di tutte le locales e loro codici brevi?

'en-CA'
'fr-CA'
'lt-LT'
'sv-FI'
'sv-SE'


Qualche idea sul perché funzioni? Il formato ISO è solo il valore predefinito o queste localizzazioni usano veramente quel formato? Se è il primo, mi preoccuperei che potrebbe cambiare inaspettatamente in futuro.
jymbob,

Questo non funziona con NodeJS al di fuori del browser.
Donato

@jymbob Penso che queste localizzazioni utilizzino veramente quei formati. Sono arrivato alla stessa risposta guardando questa pagina di Wikipedia: en.wikipedia.org/wiki/Date_format_by_country
Ciprian Tomoiagă

5

Per considerare anche il fuso orario, questo one-liner dovrebbe essere buono senza alcuna libreria:

new Date().toLocaleString("en-IN", {timeZone: "Asia/Kolkata"}).split(',')[0]

5

Puoi provare questo: https://www.npmjs.com/package/timesolver

npm i timesolver

Usalo nel tuo codice:

const timeSolver = require('timeSolver');
const date = new Date();
const dateString = timeSolver.getString(date, "YYYY-MM-DD");

È possibile ottenere la stringa della data utilizzando questo metodo:

getString

4

Nessuna di queste risposte mi ha soddisfatto. Volevo una soluzione multipiattaforma che mi ha dato la giornata nel fuso orario locale senza utilizzare alcuna libreria esterna.

Questo è quello che mi è venuto in mente:

function localDay(time) {
  var minutesOffset = time.getTimezoneOffset()
  var millisecondsOffset = minutesOffset*60*1000
  var local = new Date(time - millisecondsOffset)
  return local.toISOString().substr(0, 10)
}

Ciò dovrebbe restituire il giorno della data, nel formato AAAA-MM-GG, nel fuso orario i riferimenti della data.

Quindi, per esempio, localDay(new Date("2017-08-24T03:29:22.099Z"))tornerà "2017-08-23"anche se è già il 24 a UTC.

Dovrai eseguire il polyfill Date.prototype.toISOString affinché funzioni in Internet Explorer 8, ma dovrebbe essere supportato ovunque.


Forse vale la pena notare che ti darà solo il 23-08-2017 se sei sufficientemente indietro rispetto all'UTC (ad esempio negli Stati Uniti).
Simon D,

3

Date.js è ottimo per questo.

require("datejs")
(new Date()).toString("yyyy-MM-dd")

3

Suggerisco di usare qualcosa come formatDate-js invece di provare a replicarlo ogni volta. Basta usare una libreria che supporti tutte le principali azioni strftime.

new Date().format("%Y-%m-%d")

3
new Date().toLocaleDateString('pt-br').split( '/' ).reverse( ).join( '-' );

o

new Date().toISOString().split('T')[0]
new Date('23/03/2020'.split('/').reverse().join('-')).toISOString()
new Date('23/03/2020'.split('/').reverse().join('-')).toISOString().split('T')[0]

Prova questo!


La seconda opzione potrebbe visualizzare la data errata perché mostrerà i dati nel fuso orario UTC.
Ever Dev

2

Ecco un modo per farlo:

var date = Date.parse('Sun May 11,2014');

function format(date) {
  date = new Date(date);

  var day = ('0' + date.getDate()).slice(-2);
  var month = ('0' + (date.getMonth() + 1)).slice(-2);
  var year = date.getFullYear();

  return year + '-' + month + '-' + day;
}

console.log(format(date));

1

function myYmd(D){
    var pad = function(num) {
        var s = '0' + num;
        return s.substr(s.length - 2);
    }
    var Result = D.getFullYear() + '-' + pad((D.getMonth() + 1)) + '-' + pad(D.getDate());
    return Result;
}

var datemilli = new Date('Sun May 11,2014');
document.write(myYmd(datemilli));


1

var d = new Date("Sun May 1,2014");

var year  = d.getFullYear();
var month = d.getMonth() + 1;
var day   = d.getDate(); 

month = checkZero(month);             
day   = checkZero(day);

var date = "";

date += year;
date += "-";
date += month;
date += "-";
date += day;

document.querySelector("#display").innerHTML = date;
    
function checkZero(i) 
{
    if (i < 10) 
    {
        i = "0" + i
    };  // add zero in front of numbers < 10

    return i;
}
<div id="display"></div>


1
new Date(new Date(YOUR_DATE.toISOString()).getTime() - 
                 (YOUR_DATE.getTimezoneOffset() * 60 * 1000)).toISOString().substr(0, 10)

1

Alcune delle risposte precedenti erano OK, ma non erano molto flessibili. Volevo qualcosa che potesse davvero gestire più casi limite, quindi ho preso la risposta di @orangleliu e l'ho ampliata. https://jsfiddle.net/8904cmLd/1/

function DateToString(inDate, formatString) {
    // Written by m1m1k 2018-04-05

    // Validate that we're working with a date
    if(!isValidDate(inDate))
    {
        inDate = new Date(inDate);
    }

    // See the jsFiddle for extra code to be able to use DateToString('Sun May 11,2014', 'USA');
    //formatString = CountryCodeToDateFormat(formatString);

    var dateObject = {
        M: inDate.getMonth() + 1,
        d: inDate.getDate(),
        D: inDate.getDate(),
        h: inDate.getHours(),
        m: inDate.getMinutes(),
        s: inDate.getSeconds(),
        y: inDate.getFullYear(),
        Y: inDate.getFullYear()
    };

    // Build Regex Dynamically based on the list above.
    // It should end up with something like this: "/([Yy]+|M+|[Dd]+|h+|m+|s+)/g"
    var dateMatchRegex = joinObj(dateObject, "+|") + "+";
    var regEx = new RegExp(dateMatchRegex,"g");
    formatString = formatString.replace(regEx, function(formatToken) {
        var datePartValue = dateObject[formatToken.slice(-1)];
        var tokenLength = formatToken.length;

        // A conflict exists between specifying 'd' for no zero pad -> expand
        // to '10' and specifying yy for just two year digits '01' instead
        // of '2001'.  One expands, the other contracts.
        //
        // So Constrict Years but Expand All Else
        if (formatToken.indexOf('y') < 0 && formatToken.indexOf('Y') < 0)
        {
            // Expand single digit format token 'd' to
            // multi digit value '10' when needed
            var tokenLength = Math.max(formatToken.length, datePartValue.toString().length);
        }
        var zeroPad = (datePartValue.toString().length < formatToken.length ? "0".repeat(tokenLength) : "");
        return (zeroPad + datePartValue).slice(-tokenLength);
    });

    return formatString;
}

Esempio di utilizzo:

DateToString('Sun May 11,2014', 'MM/DD/yy');
DateToString('Sun May 11,2014', 'yyyy.MM.dd');
DateToString(new Date('Sun Dec 11,2014'),'yy-M-d');

Bella soluzione pulita e commentata. Eppure sono scettico sul primo argomento, che viene silenziosamente sostituito da una nuova data nuova se non riconosciuta come data valida. Preferisco mettere questo "valore predefinito Optionnal" come 2 ° argomento, invece, e torno una sorta di eccezione (potrebbe essere un semplice "Formato data non valido" stringa restituita) nel caso in cui il formato non viene riconosciuto, in modo che l'errore appaiono chiaramente a il tester / utente
Balmipour

1

Questo ha funzionato per me per ottenere la data corrente nel formato desiderato (AAAAMMGG HH: MM: SS):

var d = new Date();

var date1 = d.getFullYear() + '' +
            ((d.getMonth()+1) < 10 ? "0" + (d.getMonth() + 1) : (d.getMonth() + 1)) +
            '' +
            (d.getDate() < 10 ? "0" + d.getDate() : d.getDate());

var time1 = (d.getHours() < 10 ? "0" + d.getHours() : d.getHours()) +
            ':' +
            (d.getMinutes() < 10 ? "0" + d.getMinutes() : d.getMinutes()) +
            ':' +
            (d.getSeconds() < 10 ? "0" + d.getSeconds() : d.getSeconds());

print(date1+' '+time1);

1

Non è necessaria alcuna biblioteca

Solo puro JavaScript.

L'esempio seguente ottiene gli ultimi due mesi da oggi:

var d = new Date()
d.setMonth(d.getMonth() - 2);
var dateString = new Date(d);
console.log('Before Format', dateString, 'After format', dateString.toISOString().slice(0,10))


Pericoloso. In tal caso, si ignora l'offset del fuso orario.
maxence51,

1

Formato data compatibile PHP

Ecco una piccola funzione che può accettare gli stessi parametri della funzione PHP date()e restituire una stringa data / ora in JavaScript.

Nota che non tutte le opzioni di formato data () di PHP sono supportate. È possibile estendere l' partsoggetto per creare il token di formato mancante

/**
 * Date formatter with PHP "date()"-compatible format syntax.
 */
const formatDate = (format, date) => {
  if (!format) { format = 'Y-m-d' }
  if (!date) { date = new Date() }

  const parts = {
    Y: date.getFullYear().toString(),
    y: ('00' + (date.getYear() - 100)).toString().slice(-2),
    m: ('0' + (date.getMonth() + 1)).toString().slice(-2),
    n: (date.getMonth() + 1).toString(),
    d: ('0' + date.getDate()).toString().slice(-2),
    j: date.getDate().toString(),
    H: ('0' + date.getHours()).toString().slice(-2),
    G: date.getHours().toString(),
    i: ('0' + date.getMinutes()).toString().slice(-2),
    s: ('0' + date.getSeconds()).toString().slice(-2)
  }

  const modifiers = Object.keys(parts).join('')
  const reDate = new RegExp('(?<!\\\\)[' + modifiers + ']', 'g')
  const reEscape = new RegExp('\\\\([' + modifiers + '])', 'g')

  return format
    .replace(reDate, $0 => parts[$0])
    .replace(reEscape, ($0, $1) => $1)
}

// ----- EXAMPLES -----
console.log( formatDate() ); // "2019-05-21"
console.log( formatDate('H:i:s') ); // "16:21:32"
console.log( formatDate('Y-m-d, o\\n H:i:s') ); // "2019-05-21, on 16:21:32"
console.log( formatDate('Y-m-d', new Date(2000000000000)) ); // "2033-05-18"

nocciolo

Ecco una sintesi con una versione aggiornata della formatDate()funzione ed esempi aggiuntivi: https://gist.github.com/stracker-phil/c7b68ea0b1d5bbb97af0a6a3dc66e0d9


0

Ancora un'altra combinazione di risposte. Ben leggibile, ma un po 'lungo.

function getCurrentDayTimestamp() {
  const d = new Date();

  return new Date(
    Date.UTC(
      d.getFullYear(),
      d.getMonth(),
      d.getDate(),
      d.getHours(),
      d.getMinutes(),
      d.getSeconds()
    )
  // `toIsoString` returns something like "2017-08-22T08:32:32.847Z"
  // and we want the first part ("2017-08-22")
  ).toISOString().slice(0, 10);
}

0

Se la data deve essere la stessa in tutti i fusi orari, ad esempio rappresenta un valore dal database, assicurarsi di utilizzare le versioni UTC del giorno, del mese, le funzioni fullear sull'oggetto data JavaScript in quanto verranno visualizzate nell'ora UTC e evitare errori off-by-one in determinati fusi orari.

Ancora meglio, utilizzare la libreria di date Moment.js per questo tipo di formattazione.


0

Ho modificato la risposta di Samit Satpute come segue:

var newstartDate = new Date();
// newstartDate.setDate(newstartDate.getDate() - 1);
var startDate = newstartDate.toISOString().replace(/[-T:\.Z]/g, ""); //.slice(0, 10); // To get the Yesterday's Date in YYYY MM DD Format
console.log(startDate);


0

Formatta e trova la data massima e minima dai dati hashmap:

var obj = {"a":'2001-15-01', "b": '2001-12-02' , "c": '2001-1-03'};

function findMaxMinDate(obj){
  let formatEncode = (id)=> { let s = id.split('-'); return `${s[0]+'-'+s[2]+'-'+s[1]}`}
  let formatDecode = (id)=> { let s = id.split('/'); return `${s[2]+'-'+s[0]+'-'+s[1]}`}
  let arr = Object.keys( obj ).map(( key )=> { return new Date(formatEncode(obj[key])); });
  let min = new Date(Math.min.apply(null, arr)).toLocaleDateString();
  let max = new Date(Math.max.apply(null, arr)).toLocaleDateString();
  return {maxd: `${formatDecode(max)}`, mind:`${formatDecode(min)}`}
}

console.log(findMaxMinDate(obj));


In che modo ciò è correlato alla domanda (formattazione di una data)?
Peter Mortensen,

0

La riformattazione di una stringa di date è abbastanza semplice, ad es

var s = 'Sun May 11,2014';

function reformatDate(s) {
  function z(n){return ('0' + n).slice(-2)}
  var months = [,'jan','feb','mar','apr','may','jun',
                 'jul','aug','sep','oct','nov','dec'];
  var b = s.split(/\W+/);
  return b[3] + '-' +
    z(months.indexOf(b[1].substr(0,3).toLowerCase())) + '-' +
    z(b[2]);
}

console.log(reformatDate(s));

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.