есть два объекта
Первый win = {vasya:2,petya:1,kolya:3}
Второй loss = {kolya:1,vasya:2,petya:4}
Как объединить в объект по следующему принципу
{
vasya: {
win: 2,
loss: 2
},
petya: {
win: 1,
loss: 4
},
kolya: {
win: 3,
loss: 1
}
}
const win = {
vasya: 2,
petya: 1,
kolya: 3
}
const loss = {
kolya: 1,
vasya: 2,
petya: 4
}
let result = {}
Object.keys(win).forEach(key => {
result = {
...result,
[key]: {
...result[key],
win: win[key]
}
}
})
Object.keys(loss).forEach(key => {
result = {
...result,
[key]: {
...result[key],
loss: loss[key]
}
}
})
console.log(result)
как вариант, но мне не нравится с each
var win = { vasya: 2, petya: 1, kolya: 3};
var loss = { kolya: 1, vasya: 2, petya: 4};
var w = {},l = {};
$.each(win, function(k,v){ w[k] = { win: v }; });
$.each(loss, function(k,v) { l[k] = { loss: v }; });
// или
//var cb = function(o, x){ return function(k,v){ o[k] = {[x]: v}} };
//$.each(win, cb(w, 'win'));
//$.each(loss, cb(l, 'loss'));
var result = $.extend(true, {}, w,l);
console.log(result);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
var res = {}
res.forEach = function(handler){ for(var k in this){ if(typeof this[k] != 'function')handler(k, this[k]) }}
win.forEach((k, v)=>{ res[k] = res[k] || { win: 0, loss: 0 }; res[k].win += v; })
loss.forEach((k, v)=>{ res[k] = res[k] || { win: 0, loss: 0 }; res[k].loss += v; })
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Используем json schema для создания формыАнгуляр автоматически создает кнопку submit
Допустим есть несколько блоков с одинаковыми классами
здравствуйте, у меня такой вопрос, у меня есть меню, в нем ul, в каждой ul есть liКаждый последующий элемент зависит по высоте от дочки