Con 2 arrays (uno de números y otro de objetos),
¿Cómo puedo obtener el valor ( size ) de un objeto específico (en otra función) sin conocer su índice (y su valor) en la matriz solo su clave?
con la forma más corta y rápida para poder usar ese número de valor ?
Si la matriz está vacía excepto por este objeto específico, el valor de la propiedad de size será - 0;
Si mi pregunta no está clara, por favor comente y la arreglaré y mejoraré.
let firstArray = [ 1, 2 , 10, 23, {size: 890}]; funcExtract(firstArray); function funcExtract(arr){ // arr ? How to find the object when knowing only its key }Y con variedad de objetos.
let secondArray = [ {a:2}, {b:4 },{size: 700}, {c:5} ]; funcExtract(secondArray); function funcExtract(arr){ }Puede usar la función Array#find :
const test = [1, 2, 3, 4, {key: 5}] const findOne = test.find(item => item.hasOwnProperty("key")) console.log(findOne)Esto es lo que puedes hacer:
let key = "size" let secondArray = [ {a:2}, {b:4 },{size: 700}, {c:5} ]; let firstArray = [ 1, 2 , 10, 23, {size: 890}]; function funcExtract(arr,key){ let filter = arr.filter((x)=> typeof x === "object" && x.hasOwnProperty(key)) console.log(filter[0].size) } funcExtract(firstArray,key); funcExtract(secondArray,key);let secondArray = [ {a:2}, {b:4 },{size: 700}, {c:5} ]; secondArray.find(o => o.size) // {size: 700} a.filter(o => o.size) // good if you need to find more than 1 with same key