Javascript et les années...

HTML5, CSS3, Javascript, support des mobiles... Que penser de votre site ? Vous manquez d'informations pour la construction d'un site qui puisse s'afficher correctement partout ? C'est un problème simple, un peu complexe ? Venez ici !
Répondre
Brian

Javascript et les années...

Message 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>
jv2759
Tyrannosaurus Rex
Messages : 4161
Inscription : 12 févr. 2004, 14:29

Message 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...
Inscrit sur la liste des abonner absent...
Brian

Message par Brian »

Opéra aussi fait ca...

@+ Brian
FF_Olivier
Iguane
Messages : 979
Inscription : 09 juil. 2004, 15:41

Message par FF_Olivier »

Code : Tout sélectionner

nAnnee = dtJour.getFullYear(); 
openSUSE 12.2 - FF v24.0 FR - TB v24.0 FR ma config en détails - Décrivez la vôtre ici ;)
userContent.css : modifiez l'apparence et le contenu des sites visités !
Brian

Message par Brian »

Un réussite de plus au compteur du forum !

@+ Brian
Benoit
Administrateur
Messages : 4894
Inscription : 19 juil. 2003, 10:59

Message 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.
♫ Li tens s'en veit, je n'ai riens fais ;
Li tens revient, je ne fais riens. ♪
jv2759
Tyrannosaurus Rex
Messages : 4161
Inscription : 12 févr. 2004, 14:29

Message 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...
Inscrit sur la liste des abonner absent...
calimo
Animal mythique
Messages : 14118
Inscription : 26 déc. 2003, 11:51

Message 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:
HP
Tyrannosaurus Rex
Messages : 2196
Inscription : 21 oct. 2004, 10:25

Re: Javascript et les années...

Message 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 ...

“La médiocrité obtiendra immanquablement la préséance en se travestissant des oripeaux de la bienséance.”
jv2759
Tyrannosaurus Rex
Messages : 4161
Inscription : 12 févr. 2004, 14:29

Re: Javascript et les années...

Message 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...
Inscrit sur la liste des abonner absent...
Benoit
Administrateur
Messages : 4894
Inscription : 19 juil. 2003, 10:59

Message 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
♫ Li tens s'en veit, je n'ai riens fais ;
Li tens revient, je ne fais riens. ♪
Répondre

Qui est en ligne ?

Utilisateurs parcourant ce forum : Aucun utilisateur inscrit et 3 invités