Maison > interface Web > js tutoriel > Comment convertir des chaînes « jj-mm-aaaa » en objets de date JavaScript ?

Comment convertir des chaînes « jj-mm-aaaa » en objets de date JavaScript ?

Susan Sarandon
Libérer: 2024-11-23 13:56:14
original
744 Les gens l'ont consulté

How to Convert

Conversion de chaînes jj-mm-aaaa en objets date en JavaScript

La tâche à accomplir est de convertir une chaîne au format "jj -mm-aaaa" vers un objet Date à l'aide de JavaScript. La fonction new Date(string) échoue lors de la tentative de conversion en raison de la présence du symbole '-'. Pour relever ce défi, plusieurs solutions s'offrent à vous.

1. Diviser sur "-"

Une approche consiste à diviser la chaîne en ses trois composants : jour, mois et année. Ceci peut être réalisé en utilisant la méthode split("-") :

var from = $("#datepicker").val().split("-");
var f = new Date(from[2], from[1] - 1, from[0]);
Copier après la connexion

2. Utiliser des expressions régulières

Les expressions régulières peuvent être utilisées pour extraire le jour, le mois et l'année de la chaîne :

var date = new Date("15-05-2018".replace( /(\d{2})-(\d{2})-(\d{4})/, "//"));
Copier après la connexion

3. Refactoriser en fonction

Si la conversion est requise plusieurs fois, il est conseillé de créer une fonction réutilisable :

function toDate(dateStr) {
  var parts = dateStr.split("-");
  return new Date(parts[2], parts[1] - 1, parts[0]);
}
Copier après la connexion

Cette fonction peut être utilisée comme suit :

var from = $("#datepicker").val();
var f = toDate(from);
Copier après la connexion

4. JavaScript moderne (ES6)

Dans ES6, la déstructuration des tableaux peut être utilisée pour extraire les composants :

const toDate = (dateStr) => {
  const [day, month, year] = dateStr.split("-");
  return new Date(year, month - 1, day);
};
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal