Bagaimanakah saya boleh memilih harta rawak daripada objek JavaScript dengan ringkas?

Mary-Kate Olsen
Lepaskan: 2024-10-26 06:41:30
asal
663 orang telah melayarinya

How can I select a random property from a JavaScript object concisely?

Memilih Harta Rawak daripada Objek JavaScript Dengan Ringkas

Dalam JavaScript, objek ialah pasangan nilai kunci yang disimpan dalam jadual cincang. Mendapatkan semula sifat tertentu daripada objek memerlukan mengetahui kunci sifat yang tepat. Walau bagaimanapun, kadangkala adalah wajar untuk memilih sifat rawak daripada objek.

Pendekatan biasa melibatkan lelaran ke atas sifat objek, mengiranya dan kemudian menjana integer rawak dalam julat itu. Menggunakan pendekatan ini, anda akan mengulangi objek sekali untuk menentukan panjang dan kemudian mengulang sekali lagi untuk mencari sifat rawak pada indeks tersebut.

Walau bagaimanapun, terdapat cara yang lebih ringkas dan selalunya lebih pantas untuk mencapai matlamat ini:

<code class="javascript">var randomProperty = function (obj) {
    var keys = Object.keys(obj);
    return obj[keys[ keys.length * Math.random() << 0]];
};</code>
Salin selepas log masuk

Pendekatan ini menggunakan kaedah Object.keys(), yang mengembalikan tatasusunan semua kunci sifat dalam objek. Dengan mendarab panjang tatasusunan ini dengan nilai rawak kurang daripada 1 (menggunakan peralihan bit), kami memperoleh indeks rawak dalam tatasusunan. Pengindeksan ke dalam tatasusunan dengan indeks rawak ini menyediakan kunci sifat yang dipilih. Akhir sekali, mengakses objek menggunakan kunci ini mendapatkan semula nilai sifat yang berkaitan.

Kaedah ini lebih ringkas dan selalunya berfungsi lebih pantas daripada pendekatan berulang, menjadikannya pilihan pilihan untuk memilih sifat rawak daripada objek JavaScript.

Atas ialah kandungan terperinci Bagaimanakah saya boleh memilih harta rawak daripada objek JavaScript dengan ringkas?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!