Método Lodash _.invertBy()

Lodash es una biblioteca de JavaScript que funciona en la parte superior de underscore.js. Lodash ayuda a trabajar con arrays, colecciones, strings, idiomas, funciones, objetos, números, etc.

El método _.invertBy() es similar al método _.invert() excepto que el objeto invertido se genera a partir de los resultados de ejecutar cada elemento del objeto a través de iteratee. Además, el valor invertido correspondiente de cada clave invertida es una array de claves responsables de generar el valor invertido.

Sintaxis:

_.invertBy(object, iteratee)

Parámetros: este método acepta dos parámetros, como se mencionó anteriormente y se describe a continuación:

  • objeto: Contiene el objeto para invertir cada elemento.
  • iteratee: contiene la función que el método invocó por iteración.

Valor devuelto: este método devuelve el nuevo objeto invertido.

Ejemplo 1: Aquí, const _ = require(‘lodash’) se usa para importar la biblioteca lodash en el archivo.

// Requiring the lodash library 
const _ = require("lodash"); 
       
// Original array 
var object = { 'x': 3, 'y': 5, 'z': 3 };
  
// Using the _.invertBy() method
let invt_elem = _.invertBy(object);
  
// Printing the output 
console.log(invt_elem);

Producción:

{ '3': ['x', 'z'], '5': ['y'] }

Ejemplo 2:

// Requiring the lodash library 
const _ = require("lodash"); 
       
// Original array 
var object = { 'x': 3, 'y': 5, 'z': 3 };
  
// Using the _.invertBy() method
let invt_elem = _.invertBy(object, function(value) {
  return 'group' + value;
});
  
// Printing the output 
console.log(invt_elem);

Producción:

{ 'group3': ['x', 'z'], 'group5': ['y'] }

Nota: este código no funcionará en JavaScript normal porque requiere que se instale la biblioteca lodash.

Publicación traducida automáticamente

Artículo escrito por shivanisinghss2110 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *