Soy nuevo en el uso de lodash y me gustaría resolver el siguiente escenario de una manera limpia usando lodash en lugar de una instrucción for.
La matriz "datos" debe usarse para buscar en el objeto JS "Categorías" para encontrar cada elemento, devolver el valor y generar una matriz como se muestra en el código a continuación. #Si la matriz contiene un elemento que no existe en el objeto JS, debería devolver un valor predeterminado.
var categories = { "A" : "LOW", "B" : "LOW", "C" : "MEDIUM", "D" : "MEDIUM", "E" : "HIGH" } var data = ["A", "B", "C", "Unexpected"] var defaultValue = "VERYLOW" expected result: ["LOW", "MEDIUM", "VERYLOW"]Esto no es lo que pediste, pero Lodash es solo una abstracción para Vanilla JS. Por lo que vale, esto es bastante limpio (y no usa for-in)
[...new Set(data.reduce((b,a) => ([...b, categories[a] ?? defaultValue]),[]))] let categories = { "A" : "LOW", "B" : "LOW", "C" : "MEDIUM", "D" : "MEDIUM", "E" : "HIGH" } let data = ["A", "B", "C", "Unexpected"], defaultValue = "VERYLOW" let result = [...new Set(data.reduce((b,a) => ([...b, categories[a] ?? defaultValue]),[]))] console.log(result)