Le titre réécrit est : Calculer l'âge en fonction de la date de naissance au format AAAAMMJJ
P粉265724930
2023-08-20 16:03:39
<p>Comment calculer l'âge en fonction de la date de naissance au format AAAAMMJJ ? Est-il possible d'utiliser la fonction <code>Date()</code> </p>
<p>Je recherche une meilleure solution que celle que j'utilise actuellement : </p>
<p><br /></p>
<pre class="brush:js;toolbar:false;">var dob = '19800810';
var année = Nombre(dob.substr(0, 4));
var mois = Nombre(dob.substr(4, 2)) - 1;
var jour = Nombre(dob.substr(6, 2));
var aujourd'hui = new Date();
var âge = aujourd'hui.getFullYear() - année ;
if (today.getMonth() < mois || (today.getMonth() == mois && aujourd'hui.getDate() < jour)) {
âge--;
}
alerte(âge);</pre>
<p><br /></p>
Essayez-le.
Je crois que la seule partie de votre code qui semble approximative est la partie
substr
.Fiddle : http://jsfiddle.net/codeandcloud/n33RJ/
Je choisirais la lisibilité :
Avertissement : Cette méthode présente également des problèmes de précision, elle ne peut donc pas être entièrement fiable. Des erreurs peuvent survenir certaines années, certaines heures ou l'heure d'été (en fonction du fuseau horaire).
Si la précision est très importante, je recommande d'utiliser une bibliothèque pour gérer cela. De plus,
@Naveens post
est probablement le plus précis puisqu'il ne dépend pas du temps.