"Se um trabalhador quiser fazer bem o seu trabalho, ele deve primeiro afiar suas ferramentas." - Confúcio, "Os Analectos de Confúcio. Lu Linggong"
Primeira página > Programação > Como posso remover com eficiência elementos de um array que existe em outro array em JavaScript?

Como posso remover com eficiência elementos de um array que existe em outro array em JavaScript?

Publicado em 2024-11-16
Navegar:399

How can I efficiently remove elements from an array that exist in another array in JavaScript?

Remoção eficiente de elementos de array que correspondem a outro array

Em JavaScript, pode surgir o requisito de eliminar elementos de um array que existem dentro de outro array. Isso pode ser alcançado de forma eficiente, sem recorrer a loops e emendas.

Abordagem jQuery

Usando jQuery, pode-se utilizar as funções grep() e inArray():

myArray = $.grep(myArray, function(value) {
    return $.inArray(value, toRemove) 

Solução JavaScript pura

Para uma implementação JavaScript pura, Array.filter() serve como um método eficaz:

myArray = myArray.filter( function(el) {
    return toRemove.indexOf(el) 

Alternativa usando Array.includes()

À medida que o suporte do navegador para Array.includes() cresceu, ele oferece uma alternativa concisa:

myArray = myArray.filter( function(el) {
    return !toRemove.includes(el);
});

Abordagem moderna com funções de seta

O emprego de funções de seta simplifica ainda mais o código:

myArray = myArray.filter((el) => !toRemove.includes(el));

Essas abordagens de JavaScript puro fornecem maneiras eficientes de remover elementos que correspondem a outro array sem a sobrecarga de loops e emendas.

Tutorial mais recente Mais>

Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.

Copyright© 2022 湘ICP备2022001581号-3