Estou tentando remover um elemento em uma matriz em um forEachloop, mas estou tendo problemas com as soluções padrão que vi.
Isso é o que estou tentando no momento:
review.forEach(function(p){
if(p === '\u2022 \u2022 \u2022'){
console.log('YippeeeE!!!!!!!!!!!!!!!!')
review.splice(p, 1);
}
});
Eu sei que está entrando no ifporque estou vendo YippeeeeeE!!!!!!!!!!!!!no console.
MEU PROBLEMA: Eu sei que meu loop for e se a lógica estão corretos, mas minha tentativa de remover o elemento atual do array está falhando.
ATUALIZAR:
Tentei a resposta do Xotic750 e o elemento ainda não foi removido:
Aqui está a função em meu código:
review.forEach(function (item, index, object) {
if (item === '\u2022 \u2022 \u2022') {
console.log('YippeeeE!!!!!!!!!!!!!!!!')
object.splice(index, 1);
}
console.log('[' + item + ']');
});
Aqui está a saída em que a matriz ainda não foi removida:
[Scott McNeil]
[reviewed 4 months ago]
[ Mitsubishi is AMAZING!!!]
YippeeeE!!!!!!!!!!!!!!!!
[• • •]
Obviamente, isso vai para a instrução if conforme direcionado, mas também é óbvio que o [• • •] ainda está lá.
indexatributo em vez do itemseusplice
forEach? Se você deseja remover itens, a função mais adequada éfilter.