El método _.mergeWith() utiliza una función de personalización que se invoca para producir los valores combinados de las propiedades de origen y destino dadas. Cuando la función del personalizador devuelve undefined, el método maneja la fusión en su lugar. Es casi lo mismo que el método _.merge().
Sintaxis:
_.mergeWith( object, sources, customizer )
Parámetros: este método acepta tres parámetros, como se mencionó anteriormente y se describe a continuación:
- objeto: este parámetro contiene el objeto de destino.
- fuentes: este parámetro contiene el objeto de origen. Es un parámetro opcional.
- personalizador: Esta es la función para personalizar los valores asignados.
Valor devuelto: este método devuelve el objeto.
Ejemplo 1:
Javascript
// Requiring the lodash library const _ = require("lodash"); // The destination object var object = { 'amit': [{ 'susanta': 20 }, { 'durgam': 40 }] }; // The source object var other = { 'amit': [{ 'chinmoy': 30 }, { 'kripamoy': 50 }] }; // Using the _.mergeWith() method console.log(_.mergeWith(object, other));
Producción:
{ ‘amit’: [{‘chinmoy’: 30, ‘susanta’: 20 }, { ‘durgam’: 40, ‘kripamoy’: 50 }] }
Ejemplo 2:
Javascript
// Requiring the lodash library const _ = require("lodash"); // Defining the customizer function function customizer(obj, src) { if (_.isArray(obj)) { return obj.concat(src); } } // The destination object var object = { 'amit': [{ 'susanta': 20 }, { 'durgam': 40 }] }; // The source object var other = { 'amit': [{ 'chinmoy': 30 }, { 'kripamoy': 50 }] }; // Using the _.mergeWith() method console.log(_.mergeWith(object, other, customizer));
Producción:
{ ‘amit’: [{‘susanta’: 20 }, { ‘durgam’: 40}, {‘chinmoy’: 30}, {‘kripamoy’: 50 } ]}