javascript comment trouver le nombre d'enfants dans un objet
est-il un moyen de trouver le nombre d'enfants dans un objet javascript, autres que l'exécution d'une boucle et à l'aide d'un compteur? Je peux tirer de jquery si elle aidera. Je suis en train de faire ceci:
var childScenesObj = [];
var childScenesLen = scenes[sceneID].length; //need to find number of children of scenes[sceneID]. This obviously does not work, as it an object, not an array.
for (childIndex in scenes[sceneID].children) {
childSceneObj = new Object();
childSceneID = scenes[sceneID].children[childIndex];
childSceneNode = scenes[childSceneID];
childSceneObj.name = childSceneNode.name;
childSceneObj.id = childSceneID;
childScenesObj .push(childSceneObj);
}
- prêts à bondir sur jquery en fonction des réponses...
- Vous faites une nouvelle
childScenesObj
à chaque itération de la boucle, puis en appuyant sur elle-même. Je ne pense pas que cela se fera. Vous avez besoin d'un autrevar
là - Je peux utiliser jquery.
- Êtes-vous demander à propos des éléments du DOM ou de la plaine de vieux objets en JavaScript?
- les objets javascript
Vous devez vous connecter pour publier un commentaire.
Les ouvrages suivants, en ECMAScript5 (Javascript 1.85)
Si cet objet est en fait un Tableau .la longueur sera toujours de vous rendre, le nombre d'index. Si vous faites référence à un objet et vous souhaitez obtenir le nombre d'attributs/clés dans l'objet, il n'y a pas moyen que je connaisse pour que, à moins d'un compteur:
for...in
boucle à l'aide deObject.hasOwnProperty
.for(var key in obj) if((Object.prototype.hasOwnProperty.call(obj,key) && Object.prototype.propertyIsEnumerable.call(obj,key)) length++;
Ce qui est mauvais-code la preuve 🙂Object.keys(myObj).length