Eh bien, en parlant de noyau dur Les objets Javascript, les arguments
est un bon exemple pour en parler.
Dans ce cas, il s'agit d'un objet de type tableau depuis le début, apparaissait déjà dans la spécification ECMAScript 1e édition comme un simple objet.
Pourquoi ? Je pense qu'à l'époque, il n'y avait que quatre intégrés. Array
Plus tard, la modification a été proposée, mais Microsoft (qui fait partie du comité TC39) ne l'a pas approuvée, par crainte que le système de gestion de l'information ne soit trop compliqué. la rupture du web a toujours été présent.
Je vais maintenant objets hôtes le DOM, NodeLists
Je pense qu'ils ne voulaient pas utiliser la langue maternelle. Array
en raison du comportement dynamique de ces objets.
NodeLists
sont généralement en direct leur structure reflète tout changement sur la structure DOM sous-jacente...
Personnellement, j'aime les objets de type tableau, parce qu'ils sont vraiment légers. Avant ECMAScript 5, il y avait beaucoup de restrictions dans les méthodes de base, concernant l'utilisation d'objets de type tableau définis par l'utilisateur.
Par exemple, le apply
de l'ECMAScript <= 3, n'autorisait qu'un tableau de réels ou un objet d'arguments comme deuxième argument, maintenant en ES5, ce qui suit est possible :
var arrayLike = {0: 'hello ', 1:'world', length:2};
(function (a,b) { alert(a+b); }).apply(null, arrayLike);
Voir aussi :