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.
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