JSFiddle - React, Tailwind, and code Playground

HTML

<script src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.10/lodash.js"></script>

JavaScript

let obj1 = { x: 60, a: [0, 1], b: "foo", c: {y: 3} };
let obj2 = { x: 9, a: ['one'], c: {y: 4} };
let obj3 = { x: 30, a: ['two'], z: 'asd'}

const sum = _.mergeWith(obj1, obj2, obj3, (a, b) => {
	if(_.every([a, b], _.isNumber)) return a + b
  if(_.every([a, b], _.isArray)) return _.concat(a, b)
})

console.log(sum)