У меня есть три объекта, которые нужно перебрать, чтобы проверить наличие дубликатов, чтобы в итоге получился один объект.Если есть дубликаты, я бы хотел поместить их в массив, чтобы пользователь мог выбрать лучшее значение, чтобы все они в конечном итоге оказались в виде строк или целых чисел (или объектов со строками / целыми числами).Они могут выглядеть так:
const a = {
first_name: 'Tom',
height: {
feet: 5,
inches: 0
}
}
const b = {
first_name: 'Thomas',
last_name: 'Walsh',
email: 'tomwalsh@domain.com',
height: {
feet: 6,
inches: 0
}
}
const c = {
email: 'tomwalsh@sample.edu'
}
Результат будет выглядеть следующим образом:
const result = {
first_name: ['Tom', 'Thomas'],
last_name: 'Walsh',
email: ['tomwalsh@domain.com', 'tomwalsh@sample.edu'],
height: {
feet: [5, 6],
inches: 0
}
}
Я понятия не имею, будет ли a
, b
или c
полномочия на ключи, поэтому я должен принять неизвестный набор пар ключ / значение, но он определенно невелик (не более 20 пар, только 2-3 будут глубиной более 3-х уровней, и каждый из этих уровней будет максимальнымиз 4-5 пар ключ / значение.
Я могу создать новый объект, рекурсивно выполнить итерацию каждого из трех и вывести значение или создать массив значений, но это кажется неэффективным. Любые предложения?
У меня есть lodash в проекте, если нужно. Спасибо!