En JavaScript, les objets sont des paires clé-valeur stockées dans une table de hachage. Récupérer une propriété spécifique d’un objet nécessite de connaître la clé exacte de la propriété. Cependant, il peut parfois être souhaitable de sélectionner une propriété aléatoire à partir d'un objet.
Une approche courante consiste à parcourir les propriétés de l'objet, à les compter, puis à générer un entier aléatoire dans cette plage. En utilisant cette approche, vous parcourriez l'objet une fois pour déterminer la longueur, puis itéreriez à nouveau pour trouver la propriété aléatoire à cet index.
Cependant, il existe un moyen plus concis et souvent plus rapide d'atteindre cet objectif :
var randomProperty = function (obj) {
var keys = Object.keys(obj);
return obj[keys[ keys.length * Math.random() << 0]];
};
Cette approche utilise la méthode Object.keys(), qui renvoie un tableau de toutes les clés de propriété de l'objet. En multipliant la longueur de ce tableau par une valeur aléatoire inférieure à 1 (en utilisant le décalage de bits), on obtient un index aléatoire au sein du tableau. L'indexation dans le tableau avec cet index aléatoire fournit la clé de propriété sélectionnée. Enfin, accéder à l'objet à l'aide de cette clé récupère la valeur de la propriété associée.
Cette méthode est plus concise et fonctionne souvent plus rapidement que les approches itératives, ce qui en fait le choix préféré pour sélectionner une propriété aléatoire à partir d'un objet JavaScript.
Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.
Copyright© 2022 湘ICP备2022001581号-3