Deutsch   English   Français   Italiano  
<vgoblo$1it3$1@cabale.usenet-fr.net>

View for Bookmarking (what is this?)
Look up another Usenet article

Path: ...!weretis.net!feeder8.news.weretis.net!proxad.net!feeder1-2.proxad.net!usenet-fr.net!.POSTED!not-for-mail
From: Olivier Miakinen <om+news@miakinen.net>
Newsgroups: fr.sci.maths
Subject: =?UTF-8?Q?Re:_Le_calcul_de_la_racine_carr=c3=a9..._pour_des_nuls_:?=
 =?UTF-8?Q?=29?=
Date: Sat, 9 Nov 2024 20:03:20 +0100
Organization: There's no cabale
Lines: 39
Message-ID: <vgoblo$1it3$1@cabale.usenet-fr.net>
References: <672bcce0$0$28508$426a74cc@news.free.fr>
 <vggpas$b9p$1@cabale.usenet-fr.net> <vggrin$29gqi$1@dont-email.me>
 <672ce7d7$0$12934$426a74cc@news.free.fr> <vgirti$2nvn9$1@dont-email.me>
 <vgkk1k$2i8l$1@cabale.usenet-fr.net> <vgko9b$35kqs$1@dont-email.me>
 <672ea1f1$0$16817$426a34cc@news.free.fr> <vgngar$3oc57$2@dont-email.me>
 <vgnium$197m$1@cabale.usenet-fr.net> <upCWqauih-s5HTxN1OnpQKnw3Ew@jntp>
NNTP-Posting-Host: 200.89.28.93.rev.sfr.net
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Trace: cabale.usenet-fr.net 1731179000 52131 93.28.89.200 (9 Nov 2024 19:03:20 GMT)
X-Complaints-To: abuse@usenet-fr.net
NNTP-Posting-Date: Sat, 9 Nov 2024 19:03:20 +0000 (UTC)
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Firefox/52.0 SeaMonkey/2.49.4
In-Reply-To: <upCWqauih-s5HTxN1OnpQKnw3Ew@jntp>
Bytes: 3182

Le 09/11/2024 14:30, Julien Arlandis a écrit :
>> 
>> Je reviens à JavaScript. Les indices de tableaux n'y sont *pas* des nombres
>> réels ! Même si les nombres entiers sont codés selon la norme IEEE 754 qui
>> peut *aussi* coder des nombres non entiers, seuls les entiers sont utilisés
>> comme indices de tableaux. Je crois même (mais c'est à vérifier) que seuls
>> les entiers positifs entre 0 et 2^32−1 sont autorisés comme index. Donc pas
>> 3,14, ni −2, ni 2^42.
>> 
> Pas sûr de ça, Javascript mélange les tableaux indexés et les tableaux 
> associatifs, ainsi que le montre cet exemple :
> 
> a = [5, 6, 12, 10] // => [5, 6, 12, 10]
> a[3.14] = 66 // => [5, 6, 12, 10, 3.14: 66]

Oui, j'ai fait un raccourci en disant « seuls les entiers sont utilisés
comme indices de tableaux », car on peut avoir des « index » qui ne sont
pas des entiers. Mais même les tableaux associatifs sont limités à une
taille de 2^32−1 éléments car en interne ils sont indexés par un entier
sur 32 bits :

https://www.google.com/search?q=taille+max+d%27un+tableau+en+javascript
</cit>
Les tableaux JavaScript sont basés sur zéro et utilisent des index 32 bits :
l'index du premier élément est 0 et l'index le plus élevé possible est
4294967294 (2^32 −2), pour une taille de tableau maximale de 4 294 967 295 éléments.
</cit.>

Les nombres non entiers, ou trop grands, sont transformés en chaînes de
caractères quand on tente de les utiliser comme index :

a = [5, 6, 12, 10] // => [5, 6, 12, 10]
a[3.14] = 66 // => [5, 6, 12, 10, '3.14': 66]
a[5000000000] = 42 // => [ 5, 6, 12, 10, '3.14': 66, '5000000000': 42 ]
a[4000000000] = 41 // => [ 5, 6, 12, 10, <3999999996 empty items>, 41,
                   //        '3.14': 66, '5000000000': 42 ]

-- 
Olivier Miakinen