Les collections et les tableaux

Le
Tom
Bon voila, j'essaye de rentrer un peu dans la théorie du langage

Je tombe souvent sur une "collection" d'objet (document.applets --
document.styleSheets) mais je ne trouve pas d'objet "collection" dans
la norme EcmaScript

J'ai cherché sur mdc et msdn et rien trouve de probant

Une collection n'est pas un tableau puisqu'il possède la methode
item()

Est ce qu'on peut dire reelement qu'une collection est une
NodeList ???
Pourtant sur le site du w3c, ils definissent document.styleSheets
comme un objet avec les meme propriete que NodeList mais pas
directement comme un nodeList

Prise de tete un peu pour rien Je suis en train de faire un
tutorial pour mes eleves et voila
Merci
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Mickaël Wolff
Le #2268531

Je tombe souvent sur une "collection" d'objet (document.applets --
document.styleSheets) mais je ne trouve pas d'objet "collection" dans
la norme EcmaScript


Non, ce sont des HTMLCollection

Est ce qu'on peut dire reelement qu'une collection est une
NodeList ???


D'après la norme du W3C, non, puisqu'un HTMLCollection n'hérite pas de
NodeList

Pourtant sur le site du w3c, ils definissent document.styleSheets
comme un objet avec les meme propriete que NodeList mais pas
directement comme un nodeList


HTMLDocument.styleSheets n'est pas normalisé (en tout ca,s je n'ai
rien trouvé dans ce sens sur le site du w3c).


Prise de tete un peu pour rien ... Je suis en train de faire un
tutorial pour mes eleves et voila


Vous êtes prof de quoi ?
Et sur quoi va porter le cours, précisément ?

--
Mickaël Wolff aka Lupus Michaelis
http://lupusmic.org

Mickaël Wolff
Le #2271361

HTMLDocument.styleSheets n'est pas normalisé (en tout ca,s je n'ai
rien trouvé dans ce sens sur le site du w3c).


En fait, si :)

--
Mickaël Wolff aka Lupus Michaelis
http://lupusmic.org

YD
Le #2274091
Bon voila, j'essaye de rentrer un peu dans la théorie du langage...


Alors il faut bien s'imprégner de ce que l'on peut lire
au début de la norme ECMA-262 3e édition, p. 1, § 4. En
substance bien faire la distinction entre l'environnement
hôte qui fournit ses objets manipulables par script et le
langage de script et les objets qu'il fournit ou permet
de construire.

Je tombe souvent sur une "collection" d'objet (document.applets --
document.styleSheets) mais je ne trouve pas d'objet "collection" dans
la norme EcmaScript


Pas de collections en Ecmascript mais des objets (Object,
Array, Function, Number, etc.)

J'ai cherché sur mdc et msdn et rien trouve de probant ...
Une collection n'est pas un tableau puisqu'il possède la methode
item()


On peut ajouter à un objet Array (tableau n'a aucun sens en
JS) des propriétés... Par exemple :
------
Array.prototype.item = function(e){return this[e];}

var a = ['a','b','c','d','e'];
alert(a.item(3));
------
Mais les collections dont il est fait mention ici sont
fournies par le navigateur avec toutes sortes de propriétés
(pas de méthodes en JS, mais des propriétés de type
Function) qui permettent par script d'accéder aux objets
du navigateur.

Est ce qu'on peut dire reelement qu'une collection est une
NodeList ???


Je dirai l'inverse ! Une NodeList est une collection de
noeuds (dans le DOM, pas le JS). La notion de collection
est assez floue et varie d'un navigateur à l'autre (pour
ne parler que d'eux).

Pourtant sur le site du w3c, ils definissent document.styleSheets
comme un objet avec les meme propriete que NodeList mais pas
directement comme un nodeList


Pour ECMAScript, tout est objet alors... Mais, et
j'enfonce le clou, ni l'objet document, ni sa propriété
styleSheets ne sont des objets Javascript. Ce sont des
objets fournis par l'environnement hôte et manipulables
par script.

Prise de tete un peu pour rien ... Je suis en train de faire un
tutorial pour mes eleves et voila


Si tu dois transmettre, il vaut en effet mieux que cela
soit clair pour toi !

--
Y.D.

Tom
Le #2993311
Merci de tous ses renseignements, me reste plus qu'a imprimer et à
relire plusieurs fois (pour etre sur de comprendre)

Réponse à Mickaël Wolff :
Je suis prof de math ... J'organise pour les eleves de lycee un
atelier informatique ...
Voila les tutoriaux pour le web que j'ai tape :

Kompozer
http://castanet.vije.net/index.php?choix'3
Html
http://castanet.vije.net/index.php?choix9
CSS
http://castanet.vije.net/index.php?choix8
Javascript
http://castanet.vije.net/index.php?choix1

C'est la premiere annee que je fais ca ... Ils seront revus et
corriges la prochaine annee scolaire
Publicité
Poster une réponse
Anonyme