J'ai un horodatage unix, et j'essaie de le convertir en une date de calendrier telle que MM/DD/YYYY
. Jusqu'à présent, j'ai ceci:
$(document).ready(function() {
var value = $("#unixtime").val(); //this retrieves the unix timestamp
var dateString = moment(value).calendar();
alert(dateString);
});
Lorsque j'essaye d'imprimer la date du calendrier, la fenêtre indique "Date invalide". Quelqu'un peut m'aider?
javascript
datetime
momentjs
Andrew
la source
la source
calendar
fonction est agréable ( docs ici ), mais pas dans le format demandé par l'OP.monent(number)
s'attend à un horodatage unix en milli secondes (ce qui est cohérent avec l'Date
objet), alors que l'horodatage unix est en secondes par défaut. Vous pouvez donc aussi faire à lamoment(value*1000)
place demoment.unix(value)
, mais l'utilisationunix
est plus claire.L'horodatage UNIX correspond au nombre de secondes à partir de 1970, vous devez donc le convertir en objet Date JS:
la source
Moment.js fournit des formats localisés qui peuvent être utilisés.
Voici un exemple:
la source
la source
Seulement ça,
la source
Peut-être un peu en retard, mais pour de nouveaux problèmes comme celui-ci, j'utilise ce code:
Vous pouvez modifier le format en fonction de vos besoins et également ajouter un fuseau horaire comme celui-ci:
la source
x
pour l'horodatage ms unix. Documentation iciJe l'ai corrigé comme cet exemple.
la source
Il existe un mode strict et un mode pardonnant .
Alors que le mode strict fonctionne mieux dans la plupart des situations, le mode indulgent peut être très utile lorsque le format de la chaîne passée au moment peut varier.
Dans une version ultérieure, l'analyseur utilisera par défaut le mode strict. Le mode strict nécessite que l'entrée au moment corresponde exactement au format spécifié, séparateurs compris. Le mode strict est défini en passant true comme troisième paramètre à la fonction moment.
Un scénario courant où le mode indulgent est utile est dans les situations où une API tierce fournit la date et le format de date pour cette API pourrait changer. Supposons qu'une API commence par envoyer des dates au format «AAAA-MM-JJ», puis passe ultérieurement au format «MM / JJ / AAAA».
En mode strict, le code suivant entraîne l'affichage de `` Date invalide '':
En mode indulgent en utilisant une chaîne de format, vous obtenez une date erronée:
une autre façon serait
la source
Cette fonction crée la date à partir de l'horodatage:
la source
la source
la source