アンダースコア配列のメソッドと一致する 'pluck'プラグインを知っている人はいますか?Underscore.jsに相当します.jQueryの_plock
pluck_.pluck(list, propertyName)
地図の最も一般的な使用例の便利なバージョン:プロパティ値のリストを抽出する。
var stooges = [{name : 'moe', age : 40}, {name : 'larry', age : 50}, {name : 'curly', age : 60}];
_.pluck(stooges, 'name');
=> ["moe", "larry", "curly"]
Googleは今日私をあまり助けてくれません。
function pluck(originalArr, prop) {
var newArr = [];
for(var i = 0; i < originalArr.length; i++) {
newArr[i] = originalArr[i][prop];
}
return newArr;
}
それがないすべてが(対象であるそれぞれの)元の配列の要素を反復され、プロパティにあなたを取得する:多くのそれは、この機能を自分で実装するのは非常に簡単です
私は上記のソリューションを使用しようとしていましたが、いくつかのエッジケースで_plockとは異なることをテストで認識しました。上で使用した 'name'プロパティが配列内の任意のオブジェクトでnullまたは未定義である場合、この関数はarr出力からその要素を完全に省略し、始めより小さい配列を残します。以下は、これを扱っています:var arr = []; $ .each(stooges、function(i、o){return arr.push(o ["name"]);}); – Julie