Quiero usar lodash para encontrar una propiedad de un objeto en un elemento de matriz específico.
Digamos que estoy accediendo a una API y obteniendo una respuesta que la establece en el estado de reacción "personsDetails" (cuyo valor inicial era nulo), por lo que ahora se convierte en
let personsDetails=[{name:'king',id:2},{name:'queen',id:3}] //sometimes i get 1 object and sometimes 2ahora, cuando quiero acceder a la propiedad "nombre" del segundo objeto, lo hago
personsDetails && personsDetails[1] && personsDetails[1].nameEntonces, ¿hay alguna sintaxis abreviada para acceder a ella mediante el uso de lodash? Si los valores no existen necesito nulo
Por lo que sé, la propiedad _get funciona solo con objetos, así que aquí estoy tratando con una matriz y luego con un objeto
Todavía puede usar get y establecer el valor predeterminado como null
let personsDetails=[{name:'king',id:2},{name:'queen',id:3}] let res = _.get(personsDetails, '1.name',null) //or _.get(personsDetails, '[1].name',null) console.log(res) console.log(_.get(undefined, '1.name',null)) console.log(_.get([], '1.name',null)) <script src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.21/lodash.min.js"></script> o puede usar nth junto con get y establecer el valor predeterminado como null
let personsDetails=[{name:'king',id:2},{name:'queen',id:3}] let res = _.get(_.nth(personsDetails,1),'name',null) console.log(res) console.log(_.get(_.nth([],1),'name',null)) console.log(_.get(_.nth(undefined,1),'name',null)) <script src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.21/lodash.min.js"></script>