Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

454
Visualizações
findLastIndex () no funciona en FireFox, Javascript

Tengo una matriz de objects duplicados.

Tengo que encontrar siempre el último duplicado y eliminarlo de la array .

En Chrome, uso findLastIndex para obtener el índice y eliminarlo. Lamentablemente, FireFox no es compatible con esa función.

¿Alguna otra idea de cómo obtener el último índice del objeto duplicate en la array , de manera simple?

(para encontrar mi object , uso el name: string , no tengo identificación, por eso necesito el índice.

Ya he intentado usar myArr.lastIndexOf(myArr.find((item) => item.name == itemName)); pero no funciona

Aquí hay un ejemplo de matriz:

 [{ imgSource: "/sushi/test2.png" ingredients: "Nori, Cucumber, Rice, Cream cheese, Sesame, Unagi sauce" name: "sushi1" price: 133 weight: 120 }, { imgSource: "/sushi/test2.png" ingredients: "Nori, Cucumber, Rice, Cream cheese, Sesame, Unagi sauce" name: "sushi1" price: 133 weight: 120 }, { imgSource: "/sushi/test3.png" ingredients: "Rice, Cream cheese, Sesame" name: "sushi3" price: 150 weight: 100 } ]

about 4 years ago · Juan Pablo Isaza
3 Respostas
Responde à pergunta

0

findLastIndex no es una función js, pero creo que lo que intentas hacer es algo como esto:

 let arr = [ { imgSource: "/sushi/test2.png", ingredients: "Nori, Cucumber, Rice, Cream cheese, Sesame, Unagi sauce", name: "sushi1", price: 133, weight: 120, }, { imgSource: "/sushi/test2.png", ingredients: "Nori, Cucumber, Rice, Cream cheese, Sesame, Unagi sauce", name: "sushi1", price: 133, weight: 120, }, { imgSource: "/sushi/test3.png", ingredients: "Rice, Cream cheese, Sesame", name: "sushi3", price: 150, weight: 100, }, ]; let lastIndex = arr.lastIndexOf(arr.reverse().find(ele=>ele.name=="sushi1")) console.log(lastIndex)

tenga en cuenta que utilicé la función reverse() para find() porque necesita la última.

nota adicional: estos objetos duplicados no son los mismos desde el punto de vista == o === , ya que los operadores de control de calidad de los objetos comprueban las referencias y no el valor real

about 4 years ago · Juan Pablo Isaza Relatório

0

Finalmente encontré una solución para mi respuesta, gracias a Mohamad ali ghorbani, logré encontrar la manera correcta de hacerlo.

Así es como obtuve mi último índice:

 const nameArray = myCart.map((item) => item.name); const indexOfItem = nameArray.lastIndexOf(itemName); myCart.splice(indexOfItem, 1);
about 4 years ago · Juan Pablo Isaza Relatório

0

No hay findLastIndex en JS

Puedes hacer un conjunto

 let arr = [{ imgSource: "/sushi/test2.png", ingredients: "Nori, Cucumber, Rice, Cream cheese, Sesame, Unagi sauce", name: "sushi1", price: 133, weight: 120 }, { imgSource: "/sushi/test2.png", ingredients: "Nori, Cucumber, Rice, Cream cheese, Sesame, Unagi sauce", name: "sushi1", price: 133, weight: 120 }, { imgSource: "/sushi/test3.png", ingredients: "Rice, Cream cheese, Sesame", name: "sushi3", price: 150, weight: 100 } ] const mySet = new Set() arr.forEach(item => mySet.add(JSON.stringify(item))) const newArr = Array.from(mySet).map(entry => JSON.parse(entry)) console.log(newArr)

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda