Re: Indexation des tableaux en js

Liste des GroupesRevenir à fcl javascript 
Sujet : Re: Indexation des tableaux en js
De : none (at) *nospam* no.invalid (Thomas Alexandre)
Groupes : fr.comp.lang.javascript
Date : 10. Nov 2024, 13:50:53
Autres entêtes
Organisation : 🍿🍺
Message-ID : <6730ac2d$0$539$426a34cc@news.free.fr>
References : 1 2 3 4 5 6 7 8 9 10 11 12 13 14
User-Agent : Pan/0.160 (Toresk; )
Le Sun, 10 Nov 2024 12:22:48 +0100, Olivier Miakinen a écrit :

<https://tc39.es/ecma262/#sec-object-type>

Ce que je comprends de tout ça, c'est qu'un Array est un objet «
exotique »,
et que comme tous ces types d'objets il a des propriétés dont le nom est
soit un symbole (par exemple « null » ou « true »), soit une chaîne de
caractères.

De ce que j'en comprends, un Array est un objet exotique parce qu'il peut
avoir *et* des index (entiers, de 0 à 2^32-2) *et* des propriétés (c'est ça
qui le rend exotique).

```js
a = [1,2,3]
console.log(a, a.length)
a.toto = 42
a.titi = 43
console.log(a, a['toto'], a['titi'], a.length)
console.log(Object.keys(a))
```
donne un tableau de longueur 3 même si on lui ajoute des props.

Il se comporte comme un Array classique avec des index entiers positifs et
comme un objet avec des props.

Parce qu'en vrai, sous le capot, les indices *sont* des prop (ordonnées).

J'en comprends aussi qu'il peut avoir au maximum 2^53 propriétés, mais
que si l'une de ces propriétés a comme nom une chaine de caractères
représentant un nombre entier entre 0 et 2^32-2, alors elle est
considérée comme un index numérique et bénéficie alors d'un traitement
particulier, comme s'il s'agissait vraiment d'un tableau indexé par des
entiers.

Yep.

Et si par exemple on a un index égal à 1 000 000 alors c'est
comme si on avait vraiment réservé une taille mémoire de 1 000 001
objets dont les premiers emplacements sont vides.

Ah je ne pense pas. À mon avis, l'index 1 000 000 est juste un indice (et
donc juste *une* prop) et les autres indices sont justes ignorés (ie: ne
sont pas alloués en mémoire et sont considérés comme undefined).


--
"Ce qu'il faut au fond pour obtenir une espèce de paix avec les hommes,
(...) c'est leur permettre en toutes circonstances, de s'étaler, de se
vautrer parmi les vantardises niaises. Il n'y a pas de vanité
intelligente. C'est un instinct." - Céline

Date Sujet#  Auteur
10 Nov 24 * Indexation des tableaux en js (was: Re: Le calcul de la racine carré... pour des nuls :))20Thomas Alexandre
10 Nov 24 +* Re: Indexation des tableaux en js10Olivier Miakinen
10 Nov 24 i`* Re: Indexation des tableaux en js9Olivier Miakinen
10 Nov 24 i +* Re: Indexation des tableaux en js3Olivier Miakinen
10 Nov 24 i i`* Re: Indexation des tableaux en js2Thomas Alexandre
10 Nov 24 i i `- Re: Indexation des tableaux en js1Olivier Miakinen
11 Dec 24 i `* Re: Indexation des tableaux en js5Thierry Loiseau
12 Dec 24 i  `* Re: Indexation des tableaux en js4Olivier Miakinen
12 Dec 24 i   `* Re: Indexation des tableaux en js3Olivier Miakinen
13 Dec 24 i    `* Re: Indexation des tableaux en js2Thomas Alexandre
13 Dec 24 i     `- Re: Indexation des tableaux en js1Olivier Miakinen
10 Nov 24 +- Re: Indexation des tableaux en js1Samuel Devulder
30 Nov 24 +* Re: Indexation des tableaux en js (was: Re: Le calcul de la racine carré... pour des nuls :))6Jo Engo
9 Dec 24 i`* Re: Indexation des tableaux en js (was: Re: Le calcul de la racine carré... pour des nuls :))5Thomas Alexandre
9 Dec 24 i `* Re: Indexation des tableaux en js4Jo Engo
12 Dec 24 i  `* Re: Indexation des tableaux en js3Thomas Alexandre
14 Dec 24 i   `* Re: Indexation des tableaux en js2Jo Engo
16 Dec 24 i    `- Re: Indexation des tableaux en js1Thomas Alexandre
3 Dec 24 `* Re: Indexation des tableaux en js2Thierry Loiseau
9 Dec 24  `- Re: Indexation des tableaux en js1Thomas Alexandre

Haut de la page

Les messages affichés proviennent d'usenet.

NewsPortal