Ce que tu cites figure dans une _annexe_ de la spécification ECMA-262, troisième édition, dans laquelle il est précisé: « This non-normative annex suggests uniform semantics for such properties without making the properties or their semantics part of this standard. ». Donc il semblerait que cette annexe se contente de suggérer plus que d'imposer l'interprétation standardisée/normalisée de ce getYear(). Concernant Opera, depuis la version 9.5 et pour des raisons de compatibilité « cross-browser » comme ils disent, getyear() retourne l'année complète pour les année > 1999 et < 1900. Cela n'est pas conforme bien sûr avec la norme ECMA, première édition (ES1) de 1997 (et seconde édition) qu'Opera (versions < 9.5) respectait et que Firefox continue à suivre ;)
@+ -- rm - http://opera-fr.com
Salut Olivier,
Le jeudi 15 octobre 2009 à 16:15, Olivier Miakinen a écrit :
Je n'ai pas complètement répondu à ta question en te disant *pourquoi*
Firefox répond 109 au lieu de 2009.
Le 15/10/2009 15:17, Guy Gruais a écrit :
[getYear()]
Si IE et Opera affichent bien l'année 2009, Firefox s'entête à afficher
109 !!
Quelqu'un peut me dire pourquoi ?
Firefox est le seul à respecter le standard ECMA-262.
Ce que tu cites figure dans une _annexe_ de la spécification ECMA-262,
troisième édition, dans laquelle il est précisé:
« This non-normative annex suggests uniform semantics for such properties
without making the properties or their semantics part of this standard. ».
Donc il semblerait que cette annexe se contente de suggérer plus que
d'imposer l'interprétation standardisée/normalisée de ce getYear().
Concernant Opera, depuis la version 9.5 et pour des raisons de
compatibilité « cross-browser » comme ils disent, getyear() retourne
l'année complète pour les année > 1999 et < 1900. Cela n'est pas conforme
bien sûr avec la norme ECMA, première édition (ES1) de 1997 (et seconde
édition) qu'Opera (versions < 9.5) respectait et que Firefox continue à
suivre ;)
Ce que tu cites figure dans une _annexe_ de la spécification ECMA-262, troisième édition, dans laquelle il est précisé: « This non-normative annex suggests uniform semantics for such properties without making the properties or their semantics part of this standard. ». Donc il semblerait que cette annexe se contente de suggérer plus que d'imposer l'interprétation standardisée/normalisée de ce getYear(). Concernant Opera, depuis la version 9.5 et pour des raisons de compatibilité « cross-browser » comme ils disent, getyear() retourne l'année complète pour les année > 1999 et < 1900. Cela n'est pas conforme bien sûr avec la norme ECMA, première édition (ES1) de 1997 (et seconde édition) qu'Opera (versions < 9.5) respectait et que Firefox continue à suivre ;)
Ce que tu cites figure dans une _annexe_ de la spécification ECMA-262, troisième édition, dans laquelle il est précisé: « This non-normative annex suggests uniform semantics for such properties without making the properties or their semantics part of this standard. ». Donc il semblerait que cette annexe se contente de suggérer plus que d'imposer l'interprétation standardisée/normalisée de ce getYear().
Bien vu, et merci de la précision. Note que le « draft final » de la version 5 suggère toujours la même implémentation, respectée par Firefox comme l'écrivait Guy (je n'ai pas vérifié), mais bien sûr toujours sans en faire une norme.
Concernant Opera, depuis la version 9.5 et pour des raisons de compatibilité « cross-browser » comme ils disent, getyear() retourne l'année complète pour les année > 1999 et < 1900. Cela n'est pas conforme bien sûr avec la norme ECMA, première édition (ES1) de 1997 (et seconde édition) qu'Opera (versions < 9.5) respectait et que Firefox continue à suivre ;)
La conclusion qu'il faut en tirer, c'est de ne *surtout pas* utiliser cette fonction getYear() qui, outre qu'elle ne fait pas partie de la norme, se comporte différemment d'un navigateur à un autre.
Ce que tu cites figure dans une _annexe_ de la spécification ECMA-262,
troisième édition, dans laquelle il est précisé:
« This non-normative annex suggests uniform semantics for such properties
without making the properties or their semantics part of this standard. ».
Donc il semblerait que cette annexe se contente de suggérer plus que
d'imposer l'interprétation standardisée/normalisée de ce getYear().
Bien vu, et merci de la précision. Note que le « draft final » de la
version 5 suggère toujours la même implémentation, respectée par Firefox
comme l'écrivait Guy (je n'ai pas vérifié), mais bien sûr toujours sans
en faire une norme.
Concernant Opera, depuis la version 9.5 et pour des raisons de
compatibilité « cross-browser » comme ils disent, getyear() retourne
l'année complète pour les année > 1999 et < 1900. Cela n'est pas conforme
bien sûr avec la norme ECMA, première édition (ES1) de 1997 (et seconde
édition) qu'Opera (versions < 9.5) respectait et que Firefox continue à
suivre ;)
La conclusion qu'il faut en tirer, c'est de ne *surtout pas* utiliser
cette fonction getYear() qui, outre qu'elle ne fait pas partie de la
norme, se comporte différemment d'un navigateur à un autre.
Ce que tu cites figure dans une _annexe_ de la spécification ECMA-262, troisième édition, dans laquelle il est précisé: « This non-normative annex suggests uniform semantics for such properties without making the properties or their semantics part of this standard. ». Donc il semblerait que cette annexe se contente de suggérer plus que d'imposer l'interprétation standardisée/normalisée de ce getYear().
Bien vu, et merci de la précision. Note que le « draft final » de la version 5 suggère toujours la même implémentation, respectée par Firefox comme l'écrivait Guy (je n'ai pas vérifié), mais bien sûr toujours sans en faire une norme.
Concernant Opera, depuis la version 9.5 et pour des raisons de compatibilité « cross-browser » comme ils disent, getyear() retourne l'année complète pour les année > 1999 et < 1900. Cela n'est pas conforme bien sûr avec la norme ECMA, première édition (ES1) de 1997 (et seconde édition) qu'Opera (versions < 9.5) respectait et que Firefox continue à suivre ;)
La conclusion qu'il faut en tirer, c'est de ne *surtout pas* utiliser cette fonction getYear() qui, outre qu'elle ne fait pas partie de la norme, se comporte différemment d'un navigateur à un autre.
Guy Gruais
Bonjour,
Vous allez être infiniment heureux d'apprendre que Olivier Miakinen vient d'écrire :
La conclusion qu'il faut en tirer, c'est de ne *surtout pas* utiliser cette fonction getYear() qui, outre qu'elle ne fait pas partie de la norme, se comporte différemment d'un navigateur à un autre.
Malheureusement comment un néophyte qui ne connaît pas le JS peut-il savoir que le script qu'il vient de trouver sur le net ne respecte pas certaines recommandations ? A moins de tester comme je l'ai fait avec plusieurs navigateurs.
Vous allez être infiniment heureux d'apprendre que Olivier Miakinen
vient d'écrire :
La conclusion qu'il faut en tirer, c'est de ne *surtout pas* utiliser
cette fonction getYear() qui, outre qu'elle ne fait pas partie de la
norme, se comporte différemment d'un navigateur à un autre.
Malheureusement comment un néophyte qui ne connaît pas le JS peut-il
savoir que le script qu'il vient de trouver sur le net ne respecte pas
certaines recommandations ?
A moins de tester comme je l'ai fait avec plusieurs navigateurs.
Vous allez être infiniment heureux d'apprendre que Olivier Miakinen vient d'écrire :
La conclusion qu'il faut en tirer, c'est de ne *surtout pas* utiliser cette fonction getYear() qui, outre qu'elle ne fait pas partie de la norme, se comporte différemment d'un navigateur à un autre.
Malheureusement comment un néophyte qui ne connaît pas le JS peut-il savoir que le script qu'il vient de trouver sur le net ne respecte pas certaines recommandations ? A moins de tester comme je l'ai fait avec plusieurs navigateurs.
La conclusion qu'il faut en tirer, c'est de ne *surtout pas* utiliser cette fonction getYear() qui, outre qu'elle ne fait pas partie de la norme, se comporte différemment d'un navigateur à un autre.
Malheureusement comment un néophyte qui ne connaît pas le JS peut-il savoir que le script qu'il vient de trouver sur le net ne respecte pas certaines recommandations ? A moins de tester comme je l'ai fait avec plusieurs navigateurs.
Je pense que le néophyte aura cherché la fonction sur son moteur de recherche et aura peut-être trouvé de bons sites qui l'explique.
Mais de toutes manières, néophyte ou pas, on teste toujours sur différents navigateurs sitôt qu'il s'agit de CSS ou de JS, les comportements dépendant des navigateurs.
Tu as donc eu la bonne démarche.
Tiens, un point supplémentaire: d'en avoir discuté ici va créer d'autres références sur le sujet, ce qui aidera les prochains.
-- Réseau IRC Francophone: http://www.zeolia.net Aide et astuces : http://www.g33k-zone.org Communauté Francophone sur les Eggdrops: http://www.eggdrop.fr
Guy Gruais wrote:
La conclusion qu'il faut en tirer, c'est de ne *surtout pas* utiliser
cette fonction getYear() qui, outre qu'elle ne fait pas partie de la
norme, se comporte différemment d'un navigateur à un autre.
Malheureusement comment un néophyte qui ne connaît pas le JS peut-il
savoir que le script qu'il vient de trouver sur le net ne respecte pas
certaines recommandations ?
A moins de tester comme je l'ai fait avec plusieurs navigateurs.
Je pense que le néophyte aura cherché la fonction sur son moteur de
recherche et aura peut-être trouvé de bons sites qui l'explique.
Mais de toutes manières, néophyte ou pas, on teste toujours sur
différents navigateurs sitôt qu'il s'agit de CSS ou de JS, les
comportements dépendant des navigateurs.
Tu as donc eu la bonne démarche.
Tiens, un point supplémentaire: d'en avoir discuté ici va créer d'autres
références sur le sujet, ce qui aidera les prochains.
--
Réseau IRC Francophone: http://www.zeolia.net
Aide et astuces : http://www.g33k-zone.org
Communauté Francophone sur les Eggdrops: http://www.eggdrop.fr
La conclusion qu'il faut en tirer, c'est de ne *surtout pas* utiliser cette fonction getYear() qui, outre qu'elle ne fait pas partie de la norme, se comporte différemment d'un navigateur à un autre.
Malheureusement comment un néophyte qui ne connaît pas le JS peut-il savoir que le script qu'il vient de trouver sur le net ne respecte pas certaines recommandations ? A moins de tester comme je l'ai fait avec plusieurs navigateurs.
Je pense que le néophyte aura cherché la fonction sur son moteur de recherche et aura peut-être trouvé de bons sites qui l'explique.
Mais de toutes manières, néophyte ou pas, on teste toujours sur différents navigateurs sitôt qu'il s'agit de CSS ou de JS, les comportements dépendant des navigateurs.
Tu as donc eu la bonne démarche.
Tiens, un point supplémentaire: d'en avoir discuté ici va créer d'autres références sur le sujet, ce qui aidera les prochains.
-- Réseau IRC Francophone: http://www.zeolia.net Aide et astuces : http://www.g33k-zone.org Communauté Francophone sur les Eggdrops: http://www.eggdrop.fr
Guy Gruais
Bonjour,
Vous allez être infiniment heureux d'apprendre que CrazyCat vient d'écrire :