Hai,
Berikut adalah kasus penggunaan umum untuk filter. Diberikan
a = {35: true, 45: true, 55: false}
seseorang ingin memfilter dan mendapatkan kembali hanya pasangan yang nilainya benar:
_.filter(a, function(val, key) {
val === true;
});
// => {35: true, 45: true}
Saat ini, fungsi seperti filter push(value) sehingga seseorang mendapatkan array.
Apakah ada cara mudah untuk mencapai ini dengan solusi, dan jika tidak, apakah Anda akan mempertimbangkan untuk mengganti jenis pengembalian berdasarkan apakah kami menyediakan objek atau daftar?
+1
Saya hanya membutuhkan hal yang sama dan masalah ini adalah git Google ke-2 yang saya dapatkan saat mencari. Satu-satunya masalah dengan membuat _.filter pada objek mengembalikan objek adalah kompatibilitas ke belakang...
filter
adalah fungsi yang berasal dari ES5 ... dan kami tentu tidak ingin merusak kompatibilitas dasar dengan spesifikasi.
Untuk mengatasi gambaran yang lebih besar: Semua fungsi enumerable Underscore.js dapat mengambil objek atau array, dan semua mengembalikan array. Melanggar konsistensi di sini perlu dilakukan untuk semua fungsi sekaligus, bukan hanya salah satunya. API saat ini memungkinkan Anda untuk membuat fungsi Garis Bawah tanpa harus khawatir tentang jenis input.
Saya telah menambahkan fungsi filter dan tolak ke fungsi peta pelacakan mixin Gist ini untuk objek dengan kegigihan kunci/val:
+1
+1 Bisakah kalian menambahkan _.filterObj
(dll) satu per satu, mirip dengan _.mapObj
?
jk, baru saja melihat _.pick
yang sempurna untuk kasus penggunaan saya
@jtfairbank persis apa yang saya butuhkan dan mungkin apa yang kebanyakan orang butuhkan ketika mereka datang ke sini untuk 'memfilter' objek dan membuat objek.
Komentar yang paling membantu
jk, baru saja melihat
_.pick
yang sempurna untuk kasus penggunaan saya