У меня есть коллекция как так:Упорядочивание массива на основе состояния lodash
var scores = [{
name: foo,
score: 34
}, {
name: bar,
score: 23
}, {
name: baz,
score: 99
}]
У меня также есть переменная, содержащая имя:
var selfName = 'bar';
Как я могу изменить коллекцию забивает таким образом, что объект, содержащий selfName имеет индекс 0. Ожидаемый результат:
[{
name: bar,
score: 23
}, {
name: foo,
score: 34
}, {
name: baz,
score: 99
}]
Я знаю, что могу сделать это:
var isSelfName = (selfName, score) => {
var _name = selfName;
return (score) => {
return score.name === selfName;
}
};
var result = _.filter(scores, isSelfName(selfName));
result.push(_.reject(scores, isSelfName(selfName)));
result = _.flatten(result);
console.log('result:', result);
Есть ли лучший способ сделать это?
И добавить ES6 оператор спреда, чтобы сделать его более лаконичен: результата вара = _.concat (... темп); – jgr0
@ jgr0 спасибо, что указал. Обновлено. – WitVault