ZephLe 05/11/2014 à 20:43
Il n'y a pas de lib standard en JS en-dehors des quelques types builtin (string, array, regex), ça fait partie des choix de design du langage, entre autres parce qu'il est difficile d'en définir une en-dehors de tout contexte. À quoi doit ressembler la lib standard de quelque chose qui sert d'interface pour MongoDB, de langage de script dans des pages web, de techno serveur-side et d'outil pour faire des macros dans OpenOffice ? jQuery est un outil très pratique pour faire du web par exemple, mais n'aurait aucun sens dans node.js.
Sinon pour "table de hash", comme je viens de le dire ça dépend de ta définition. Si pour toi une table de hash est quelque chose d'autre que des clé/valeurs, alors Object n'est pas une table de hash. Comme il est trivial d'implémenter ce que tu appelles une table de hash avec Object, je ne vois pas en quoi c'est un problème.
De même je ne comprends pas ta fixation sur les clés des Object qui doivent être des strings. Il est défini comme ça, à quel moment est-ce quelqu'un t'a laissé croire qu'il en serait autrement ? Tu as déjà hurlé au scandale parcequ'utiliser des lists en tant que clés dans des dictionnaires en Python ne faisait pas ce à quoi tu t'attendais alors que ça fonctionne très bien avec des tuples ? Pourtant je ne vois pas en quoi ça serait une convention plus légitime.