Lebih
cara terbaik untuk mendapatkan kunci kunci/nilai objek javascript
Jika saya memiliki JS objek seperti:
var foo = { 'bar' : 'baz' }
Jika aku tahu bahwa foo
memiliki dasar kunci/nilai struktur, tapi don't tahu nama kunci, apa yang's cara termudah untuk mendapatkannya? untuk ... di
? $.masing-masing()
? Saya berharap ada's sesuatu yang lebih baik....
165
16
Anda akan iterate dalam objek dengan untuk loop:
Atau
Anda dapat mengakses setiap tombol secara individual tanpa iterasi seperti pada:
Jika anda ingin mendapatkan semua kunci, ECMAScript 5 diperkenalkan
Objek.tombol
. Ini hanya didukung oleh browser yang lebih baru tetapi MDC dokumentasi memberikan alternatif implementasi (yang juga menggunakanuntuk...di
btw):Tentu saja jika anda ingin investasi, kunci dan nilai, maka
untuk...di
adalah satu-satunya solusi yang masuk akal.Mengingat Objek anda:
Untuk mendapatkan
bar
, menggunakan:Untuk mendapatkan
baz
, menggunakan:Dengan asumsi satu objek
A salah satu kapal untuk anda:
Ini adalah yang paling sederhana dan cara yang mudah. Ini adalah bagaimana kita melakukan hal ini.
Saya sedang mengalami masalah yang sama dan ini adalah apa yang bekerja
Merujuk MDN
Saya don't melihat apa-apa lagi dari
untuk (var key di foo)
.Cara termudah adalah dengan hanya menggunakan Underscore.js:
Ya, anda perlu ekstra perpustakaan, tapi itu's begitu mudah!
Objek.kunci-kunci() Objek.kunci-kunci() method ini mengembalikan sebuah array dari objek yang diberikan's sendiri enumerable sifat, dalam urutan yang sama seperti yang disediakan oleh untuk...dalam loop (perbedaan adalah bahwa yang di loop menyebutkan sifat dalam prototipe jaringan).
Objek.nilai-nilai() Objek.nilai-nilai() method ini mengembalikan sebuah array dari objek yang diberikan's sendiri enumerable nilai properti, dalam urutan yang sama seperti yang disediakan oleh untuk...dalam loop (perbedaan adalah bahwa yang di loop menyebutkan sifat dalam prototipe jaringan).
Untuk lebih lanjut silahkan kunjungi di sini
Karena anda menyebutkan
$.masing-masing()
, di sini's yang berguna pendekatan yang akan bekerja di jQuery 1.6+:Tidak ada cara lain selain
untuk ... dalam
. Jika anda don't ingin menggunakan itu (parhaps karena itu's marginal yang tidak efisien harus ujihasOwnProperty
pada setiap iterasi?) kemudian gunakan berbeda membangun, misalnya array kvp's:penggunaan untuk masing-masing loop untuk mengakses tombol-tombol pada Objek atau Peta dalam javascript
Catatan: anda juga dapat menggunakan
ini akan memberi anda seperti ini output:
[bar];
Nah
$.masing-masing
adalah sebuah perpustakaan yang membangun, sedangkanuntuk ... di
asli js, yang harus lebih baikuntuk menampilkan string, cukup gunakan: