Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

ordinare date locali

11 views
Skip to first unread message

son

unread,
Nov 25, 2018, 5:35:15 AM11/25/18
to
Ho delle date "lunghe" in italiano, che, tanto per fare un esempio,
posso immaginare in un array:

var d=["2 gen 2019", "4 mar 2019", "3 feb 2019", "1 dic 2018"]

Ora avrei bisogno di ordinare l'array d in base alla data.

d.sort(function(a,b){return ...})

Cosa posso inserire nella funzione di ordinamento? In altre parole, c'è
un metodo che mi permette di convertire la data "lunga" locale in un
formato di data direttamente confrontabile?

Grazie.

Alessandro Pellizzari

unread,
Nov 25, 2018, 6:10:19 AM11/25/18
to
On 25/11/2018 10:35, son wrote:

> Cosa posso inserire nella funzione di ordinamento? In altre parole, c'è
> un metodo che mi permette di convertire la data "lunga" locale in un
> formato di data direttamente confrontabile?

No, soprattutto non in italiano.
Con moment.js puoi parsare le date inglesi e nel 99% dei casi funziona.

Nel tuo caso è più semplice fare uno split della stringa sullo spazio,
associare il mese con il numero, formattare il giorno a due cifre e
costruire un numero tipo 20190201 (invece di 1 feb 2019) e confrontare
quello.

Se l'array è grande conviene fare un primo passaggio per costruire
l'array delle date numeriche e poi il sorting. Se sono meno di 1000
elementi tanto vale farlo al volo.

Bye.


son

unread,
Nov 25, 2018, 6:31:08 AM11/25/18
to
Il 25/11/2018 12:10, Alessandro Pellizzari ha scritto:
> Nel tuo caso è più semplice fare uno split della stringa sullo spazio,
> associare il mese con il numero, formattare il giorno a due cifre e
> costruire un numero tipo 20190201 (invece di 1 feb 2019) e confrontare
> quello.


Ottima spiegazione, come sempre.
Molte volte parlare con qualcuno serve a capire che il proprio problema
può essere affrontato e risolto in modo diverso (e più semplice)
rispetto a quanto inizlamente immaginato.
Grazie ancora.

0 new messages