次の方法で _.pick メソッドを使用しています
オブジェクトの配列内の各オブジェクトから取得したいプロパティ名に過ぎない文字列の配列があるとします
var wantedPropArray=["prop1","prop2","prop3.name"];
以下は私のオブジェクト配列です
var objectArray = [
{"prop1":"prop1Data1","prop2":"prop2Data1","prop3":{"name":"Tom","age":"24","class":"graduate"},"prop4":"prop4Data1","prop5":"prop5Data1"},
{"prop1":"prop1Data2","prop2":"prop2Data2","prop3":{"name":"Cat","age":"24","class":"graduate"},"prop4":"prop4Data2","prop5":"prop5Data2"}
{"prop1":"prop1Data3","prop2":"prop2Data3","prop3":{"name":"Tom","age":"24","class":"graduate"},"prop4":"prop4Data3","prop5":"prop5Data3"}
{"prop1":"prop1Data4","prop2":"prop2Data4","prop3":{"name":"Tom","age":"24","class":"graduate"},"prop4":"prop4Data4","prop5":"prop5Data4"}
]
for( var item in objectArray ){
var objectArrayOnlySelectedProperties = _.pick(objectArray[item] , wantedPropArray);
}
最初の反復で objectArrayOnlySelectedProperties データを確認できるとします。
objectArrayOnlySelectedProperties = {"prop1":"prop1Data1","prop2":"prop2Data1"};
私はそれが私にこのような結果を与えることを期待しています
objectArrayOnlySelectedProperties = {"prop1":"prop1Data1","prop2":"prop2Data1","prop3.name":"Tom"};
私が言いたいのは、_.pick メソッドは prop3 を調べて prop3.name を取得できないということです。アンダースコアの pick メソッドを使用して、配列内の各オブジェクトのサブプロパティを一致させる方法を誰でも提案できますか?
前もって感謝します