Jump to content
Sign in to follow this  
djp1988

java et date

Recommended Posts

Salut,

J'utilise ce code sur mes pages:

<script type="text/javascript">
var days = new Array("Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday");
var months = new Array("January",
"February", "March", "April", "May", "June",
"July", "August", "September", "October",
"November", "December");
var now = new Date();
day = now.getDay();
date = now.getDate();
month = now.getMonth();
year = now.getYear();
if (year < 1900) { year += 1900 }
document.write(days[day] + " the " + date
+ " of " + months[month] + " " + year);
</script>

Ce qui fait affiché la date, par contre je souhaite inculre en plus le mot "st" si Day fini en 1, "nd" si Day fini en 2, "rd" si Day fini en "3", et pour le reste ajouter "th"

Comemnt je dois mettre a jour ce code?

Donc je passerai de:

Monday the 1 of september => Monday the 1st of september

Share this post


Link to post
Share on other sites

Précision : JAVA et Javascript sont 2 langages complètement différents.

<script type="text/javascript">
var days = new Array("Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday");
var months = new Array("January","February", "March", "April", "May", "June",
"July", "August", "September", "October",
"November", "December");
// ici modif
var suites = new Array("st","nd","rd");

var now = new Date();
var day = now.getDay();
var ladate = now.getDate();
var suite = "";
// ici modif
if ( ladate <= 3 )
var suite = suites[ladate-1];
month = now.getMonth();
year = now.getYear();
if (year < 1900) { year += 1900 }
document.write(days[day] + " the " + ladate
// ici modif
+ suite
+ " of " + months[month] + " " + year);
</script>

J'ai changé la variable date en ladate pour des histoires de mots réservés...

Share this post


Link to post
Share on other sites

merci beaucoup, donc c'est du javascript alors?

Dernier chose, je ois ajouter quoi pour que si ladate >3 alors ecrire "th" ?

Je comprends pas al signification du " -1 " dans :

if ( ladate <= 3 )

var suite = suites[ladate-1];

Mais je veins de me rendre compte que le code marchera pas car les dates doivent etre les suivants:

1st

2nd

3rd

4th

..

10th

11th

12th

...

20th

21st

22nd

23rd

24th

...

30th

31st

C'est possible de mettre un variable pareil?

Edited by djp1988

Share this post


Link to post
Share on other sites
merci beaucoup, donc c'est du javascript alors?

Oui...

Dernier chose, je dois ajouter quoi pour que si ladate >3 alors ecrire "th" ?

if ( ladate <= 3 )
var suite = suites[ladate-1];
else
var suite = "th";

Je comprends pas al signification du " -1 "

On stocke les libellés dans un tableau. Le premier indice d'un tableau est 0.

Donc pour que le 1er du mois corresponde à l'indice 0 du tableau, on soustrait 1 !

N'oublions pas que c'est une bricole vite faite hein... :cool:

Share this post


Link to post
Share on other sites

Resalut,

J'ai ajouter plusieurs If, cela reste correcte?

<script type="text/javascript">
var days = new Array("Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday");
var months = new Array("January","February", "March", "April", "May", "June",
"July", "August", "September", "October",
"November", "December");
// ici modif
var suites = new Array("st","nd","rd");

var now = new Date();
var day = now.getDay();
var ladate = now.getDate();
var suite = "";
// ici modif
if ( ladate <= 3 )
var suite = suites[ladate-1];
else
var suite = "th";
if ( ladate = 21 )
var suite = "st";
if ( ladate = 22 )
var suite = "nd";
if ( ladate = 23 )
var suite = "rd";
if ( ladate = 31 )
var suite = "st";

month = now.getMonth();
year = now.getYear();
if (year < 1900) { year += 1900 }
document.write(days[day] + " the " + ladate
// ici modif
+ suite
+ " of " + months[month] + " " + year);
</script>

Edited by djp1988

Share this post


Link to post
Share on other sites

Pour les comparaisons, il faut mettre 2 fois le signe égal :

if ( ladate == 21 )

var suite = "st";

Quels sont cas les où tu veux mettre les st nd, etc ?? on doit pouvoir faire plus simple

Share this post


Link to post
Share on other sites

ok, donc pour "st" il le faut quand la date est : 1, 21, 31

"nd" c'est pour: 2, 22

"rd" c'est pour 3, 23

et le reste c'est "th"

Share this post


Link to post
Share on other sites

je devrais ajouter : ???????

if ( ladate == 21 )
var suite = "st";
if ( ladate == 22 )
var suite = "nd";
if ( ladate == 23 )
var suite = "rd";
if ( ladate == 31 )
var suite = "st";

Share this post


Link to post
Share on other sites

Heureusement non qu'on ne doit pas attendre le bon jour pour essayer...

Tu peux mettre ladate = 21; dans le code avant les conditions.

Share this post


Link to post
Share on other sites
Tu peux mettre ladate = 21; dans le code avant les conditions.

tu peux rajouter: pour tester et tu l'enlèves après... :smartass:

Share this post


Link to post
Share on other sites

effectivement, je ne savais pas que le javascript aler chercher la date sur mon système, très bien, j'ai testé et ca marche ! merci

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×
×
  • Create New...