Mon typeof le regarde et il dit que c'est un objet, mais typeof vérifie les données et vous dira que c'est un objet.
J'ai utilisé Array.isArray pour vérifier à nouveau et cela est revenu vrai.
J'ai donc jeté un oeil à l'explication de cette fonction sur MDN :
https://developer.mozilla.org...
Il indique que la valeur de retour est un tableau.
J'ai jeté un œil à ECMA 5.1 et je n'ai trouvé aucune description des tableaux ci-dessus
http://ecma-international.org...
Je suis donc là aussi en attendant que le maître réponde =. =
----------------- La ligne de démarcation pour une explication forcée -------------------
Une instance d'un tableau est aussi un objet, vous pouvez donc en effet ajouter des propriétés et lui attribuer des valeurs.
Mais veuillez noter que pour les variables qui ne sont pas des types composites, il n'y a aucun moyen d'ajouter des attributs et d'attribuer des valeurs à leurs instances. Parce que c’est inutile même si vous le faites.
Je me suis mal souvenu, alors j'ai pensé qu'il n'y avait aucun moyen d'ajouter des attributions d'attributs aux instances numériques. . . . .
Bien que la valeur de retour exec normale soit un tableau, elle possède d'autres attributs. Pour plus de détails, vous pouvez lire la documentation. Veuillez en savoir plus dans Rhinoceros ou Height.
var a={0:"Box"};
a.index=10;
a.input="This is a Box! That is a Box!";
var b=["Box"];
b.index=10;
b.input="This is a Box! That is a Box!"
console.log(a,b);
En fait, la chose la plus déroutante ici est de savoir pourquoi ["Box"].index=10 peut-il être défini avec succès ? Regardez d'abord les résultats d'impression :
Pour l'illustrer plus clairement, nous l'agrandissons et observons sa chaîne de prototypes. Chaîne prototype de l'objet a :
Chaîne prototype du tableau b :
Comme le montre la figure ci-dessus, le tableau hérite des méthodes de type Objet de la chaîne prototype. Lorsque ["box"] ne trouve pas la méthode correspondante dans Array(0), il descendra la chaîne de prototypes pour trouver la méthode dans Object. Donc, théoriquement, le type tableau peut également être considéré comme un type de type objet.
Mon typeof le regarde et il dit que c'est un objet, mais typeof vérifie les données et vous dira que c'est un objet.
J'ai utilisé Array.isArray pour vérifier à nouveau et cela est revenu vrai.
J'ai donc jeté un oeil à l'explication de cette fonction sur MDN :
https://developer.mozilla.org...
Il indique que la valeur de retour est un tableau.
J'ai jeté un œil à ECMA 5.1 et je n'ai trouvé aucune description des tableaux ci-dessus
http://ecma-international.org...
Je suis donc là aussi en attendant que le maître réponde =. =
----------------- La ligne de démarcation pour une explication forcée -------------------
Une instance d'un tableau est aussi un objet, vous pouvez donc en effet ajouter des propriétés et lui attribuer des valeurs.
Mais veuillez noter que pour les variables qui ne sont pas des types composites, il n'y a aucun moyen d'ajouter des attributs et d'attribuer des valeurs à leurs instances. Parce que c’est inutile même si vous le faites.
Je me suis mal souvenu, alors j'ai pensé qu'il n'y avait aucun moyen d'ajouter des attributions d'attributs aux instances numériques. . . . .
Bien que la valeur de retour exec normale soit un tableau, elle possède d'autres attributs. Pour plus de détails, vous pouvez lire la documentation. Veuillez en savoir plus dans Rhinoceros ou Height.
.Sortie
a
Obtenez, en JavaScript, un tableau est aussi un objetMa compréhension concerne les membres du tableau et les membres de l'objet tableau.
]
En fait, la chose la plus déroutante ici est de savoir pourquoi ["Box"].index=10 peut-il être défini avec succès ?
Regardez d'abord les résultats d'impression :
Pour l'illustrer plus clairement, nous l'agrandissons et observons sa chaîne de prototypes.
Chaîne prototype de l'objet a :
Chaîne prototype du tableau b :
Comme le montre la figure ci-dessus, le tableau hérite des méthodes de type Objet de la chaîne prototype.
Lorsque ["box"] ne trouve pas la méthode correspondante dans Array(0), il descendra la chaîne de prototypes pour trouver la méthode dans Object.
Donc, théoriquement, le type tableau peut également être considéré comme un type de type objet.
La première question : c'est juste un tableau ordinaire
Deuxième question : erreur de grammaire