In JavaScript sind Objekte Schlüssel-Wert-Paare, die in einer Hash-Tabelle gespeichert sind. Um eine bestimmte Eigenschaft von einem Objekt abzurufen, muss der genaue Eigenschaftsschlüssel bekannt sein. Manchmal kann es jedoch wünschenswert sein, eine zufällige Eigenschaft eines Objekts auszuwählen.
Ein üblicher Ansatz besteht darin, die Eigenschaften des Objekts zu durchlaufen, sie zu zählen und dann eine zufällige Ganzzahl innerhalb dieses Bereichs zu generieren. Bei diesem Ansatz würden Sie das Objekt einmal durchlaufen, um die Länge zu bestimmen, und dann erneut iterieren, um die Zufallseigenschaft an diesem Index zu finden.
Es gibt jedoch einen prägnanteren und oft schnelleren Weg, dieses Ziel zu erreichen:
var randomProperty = function (obj) {
var keys = Object.keys(obj);
return obj[keys[ keys.length * Math.random() << 0]];
};
Dieser Ansatz verwendet die Methode Object.keys(), die ein Array aller Eigenschaftsschlüssel im Objekt zurückgibt. Indem wir die Länge dieses Arrays mit einem Zufallswert kleiner als 1 multiplizieren (mittels Bitverschiebung), erhalten wir einen zufälligen Index innerhalb des Arrays. Die Indizierung des Arrays mit diesem Zufallsindex liefert den ausgewählten Eigenschaftsschlüssel. Schließlich wird durch den Zugriff auf das Objekt mit diesem Schlüssel der zugehörige Eigenschaftswert abgerufen.
Diese Methode ist prägnanter und führt häufig schneller als iterative Ansätze aus, weshalb sie die bevorzugte Wahl für die Auswahl einer zufälligen Eigenschaft aus einem JavaScript-Objekt ist.
Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.
Copyright© 2022 湘ICP备2022001581号-3