Page 1 sur 1

Javascript et les années...

Publié : 24 sept. 2005, 15:23
par Brian
Bonjour,

Pourquoi sous Firefof, ce script me dit que nous somme en 105...

Merci à vous

Code : Tout sélectionner

<SCRIPT LANGUAGE="JavaScript">

var csChaine;
var nJour, nMois, nAnnee, nHeures , nMinutes, nSecondes;
var dtJour;
csChaine = " ";
dtJour = new Date();
nJour = dtJour.getDate();
if ( nJour < 10 ) csChaine += "0";
csChaine += nJour;
nMois = dtJour.getMonth() + 1;
if (nMois == 1) csChaine += " Janvier";
else if (nMois == 2) csChaine += " Février";
else if (nMois == 3) csChaine += " Mars";
else if (nMois == 4) csChaine += " Avril";
else if (nMois == 5) csChaine += " Mai";
else if (nMois == 6) csChaine += " Juin";
else if (nMois == 7) csChaine += " Juillet";
else if (nMois == 8) csChaine += " Août";
else if (nMois == 9) csChaine += " Septembre";
else if (nMois == 10) csChaine += " Octobre";
else if (nMois == 11) csChaine += " Novembre";
else if (nMois == 12) csChaine += " Décembre";
csChaine += " ";
nAnnee = dtJour.getYear();
if (nAnnee <= 99) nAnnee += 1900;
csChaine += nAnnee + " ";
nHeures = dtJour.getHours();
if (nHeures < 10) csChaine += "0";
csChaine += nHeures + ":";
nMinutes = dtJour.getMinutes();
if (nMinutes < 10) csChaine += "0";
csChaine += nMinutes;
document.write( csChaine );

</SCRIPT>

Publié : 24 sept. 2005, 15:31
par jv2759
utilise ceci :

if (nAnnee <= 999) nAnnee += 1900;

en fait firefox semble donner le nombre d'année depuit 1900 plutot que le nombre d'année réel... C'est pas forcement malin mais il faudrait voir les spécification et cela je ne sais aps trop ou cela ce trouve...

Publié : 24 sept. 2005, 15:37
par Brian
Opéra aussi fait ca...

@+ Brian

Publié : 24 sept. 2005, 15:52
par FF_Olivier

Code : Tout sélectionner

nAnnee = dtJour.getFullYear(); 

Publié : 24 sept. 2005, 16:46
par Brian
Un réussite de plus au compteur du forum !

@+ Brian

Publié : 24 sept. 2005, 23:47
par Benoit
jv2759 a écrit :utilise ceci :

if (nAnnee <= 999) nAnnee += 1900;

en fait firefox semble donner le nombre d'année depuit 1900 plutot que le nombre d'année réel... C'est pas forcement malin mais il faudrait voir les spécification et cela je ne sais aps trop ou cela ce trouve...
Je crois me souvenir qu'il est explicitement marqué dans la spécification ECMAScript que getYear() doit retourner le nombre d'années écoulées depuis 1900. Et c'est pour ça qu'ils ont dû créer getFullYear() par la suite.

Publié : 25 sept. 2005, 00:15
par jv2759
Benoit a écrit :Je crois me souvenir qu'il est explicitement marqué dans la spécification ECMAScript que getYear() doit retourner le nombre d'années écoulées depuis 1900. Et c'est pour ça qu'ils ont dû créer getFullYear() par la suite.
C'est que je n'avais pas vue qu'il y avait une autre fonction et je me suis laisser berner par un logiciel qui ne respect pas les spécification...

PS : Cela existe une doc emascript et/ou javascript standard en appuyant bien sur ce mots? Et française bien evidament...

Publié : 25 sept. 2005, 09:14
par calimo
Pas en français, mais ça existe : http://www.ecma-international.org/publi ... ma-262.htm
À la page 172 il y a écrit :B.2.4 Date.prototype.getYear ( )
NOTE
The getFullYear method is preferred for nearly all purposes, because it avoids the “year 2000
problem.”
When the getYear method is called with no arguments the following steps are taken:
1. Let t be this time value.
2. If t is NaN, return NaN.
3. Return YearFromTime(LocalTime(t)) − 1900.
:wink:

Re: Javascript et les années...

Publié : 25 sept. 2005, 15:58
par HP
Brian a écrit :Bonjour,

Pourquoi sous Firefof, ce script me dit que nous somme en 105...

Merci à vous

Code : Tout sélectionner

<SCRIPT LANGUAGE="JavaScript">
[...]
</SCRIPT>
pourquoi ne pas utiliser PHP (date) ?
:roll:
ça me semblerait plus simple ...
de toute façon, j'ai jamais rien compris (ou presque à javascript) peut être parce que ça ne m'intéresse que très peu ...

Re: Javascript et les années...

Publié : 25 sept. 2005, 16:47
par jv2759
HP a écrit :pourquoi ne pas utiliser PHP (date) ?
Moi comme cela sans savoir je dirait php... php c'est sur le serveur... Et si le serveur n'as pas php...

Publié : 25 sept. 2005, 19:06
par Benoit
jv2759 a écrit :PS : Cela existe une doc emascript et/ou javascript standard en appuyant bien sur ce mots? Et française bien evidament...
Il y en a une en anglais sur devmo. Tu es le bienvenu pour la traduire :p
http://developer.mozilla.org/en/docs/Co ... te#Methods