2017-07-17 13 views
0

私はいくつかのlodash sortBy関数をチェーンしようとしていますが、最後のsortByでは条件付きにしたいと思います。lodashの作り方sortByは値が等しい場合ソートしない

const events = _(arr).chain().sortBy((e) => { 
    return e.event.json.QUERY.type 
    }).sortBy((e) => { 
    if (e.event.json.QUERY.type === 'ad') { 
     return e.event.json.QUERY.metadata.ad.assetid; 
    } else { 
     return e.event.json.QUERY.metadata.content.assetid; 
    } 
    }).sortBy((e) => { 
    return e.event.json.QUERY.utc; // this is where I want a conditional but I don't know if that's possible with lodash 
    }).value() 

答えて

1

lodash sortBy方法が文句を言わないスワップ要素そのソートは、キー値、つまり、安定ソートが実装されています。UTCは同じ

コードである場合、私は、配列内の位置を変更したくありません同じだ。 documentation on sortByから

この方法は、それが等しい要素の元のソート順序を保持、つまり、安定したソートを行います。

+0

ありがとうございます。私は以前のアレイでコンソールロギングをしていたに違いないが、新しいアレイが実際に私が望んでいたことを認識していなかった。ありがとう! – Steve

+0

[[回答を受け入れたとマークする](http://stackoverflow.com/help/someone-answers)を忘れないでください。 – trincot

関連する問題