في JavaScript، الكائنات هي أزواج ذات قيمة أساسية مخزنة في جدول التجزئة. يتطلب استرداد خاصية معينة من كائن معرفة مفتاح الخاصية الدقيق. ومع ذلك، في بعض الأحيان قد يكون من المرغوب فيه تحديد خاصية عشوائية من كائن ما.
يتضمن النهج الشائع التكرار على خصائص الكائن، وإحصائها، ثم إنشاء عدد صحيح عشوائي ضمن هذا النطاق. باستخدام هذا الأسلوب، يمكنك التكرار على الكائن مرة واحدة لتحديد الطول ثم التكرار مرة أخرى للعثور على الخاصية العشوائية في هذا الفهرس.
ومع ذلك، هناك طريقة أكثر إيجازًا وأسرع في كثير من الأحيان لتحقيق هذا الهدف:
var randomProperty = function (obj) {
var keys = Object.keys(obj);
return obj[keys[ keys.length * Math.random() << 0]];
};
يستخدم هذا الأسلوب الأسلوب Object.keys()، الذي يُرجع مصفوفة من كافة مفاتيح الخصائص في الكائن. من خلال ضرب طول هذه المصفوفة بقيمة عشوائية أقل من 1 (باستخدام إزاحة البت)، نحصل على فهرس عشوائي داخل المصفوفة. توفر الفهرسة في المصفوفة باستخدام هذا الفهرس العشوائي مفتاح الخاصية المحدد. وأخيرًا، يؤدي الوصول إلى الكائن باستخدام هذا المفتاح إلى استرداد قيمة الخاصية المرتبطة.
هذه الطريقة أكثر إيجازًا وغالبًا ما تؤدي أداء أسرع من الطرق التكرارية، مما يجعلها الخيار المفضل لتحديد خاصية عشوائية من كائن JavaScript.
تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.
Copyright© 2022 湘ICP备2022001581号-3