Mam szereg elementów i trzeba usunąć z nich pewne. Problem w tym, że JavaScript wydaje się nie mieć dla każdej pętli i jeśli używam pętli for, napotykam na problemy z tym, że zasadniczo próbuję sprawdzić elementy poza granicami tablicy lub brakujące elementy w tablicy, ponieważ zmieniają się indeksy . Pokażę ci, co mam na myśli:Jak iterować po tablicy i usunąć elementy w JavaScript
var elements = [1, 5, 5, 3, 5, 2, 4];
for(var i = 0; i < elements.length; i++){
if(elements[i] == 5){
elements.splice(i, 1);
}
}
Problem polega na tym, że gdy elementy [1] jest usuwany, elementy [2] staje elementów [1]. Pierwszym problemem jest to, że niektóre elementy nigdy nie są badane. Innym problemem jest to, że zmiany długości i jeśli mocno zakodowuję granice, to mogę próbować badać elementy poza granicami tablicy. Więc jaki jest najlepszy sposób na zrobienie tego niewiarygodnie prostego?
'elements.splice (ja--, 1);' –
nie lubię "-" lub "++" składnia ale przydatna wskazówka przy rozpoczynaniu od początku tablicy +1 – Xotic750
Zobacz też: [Przechodzenie przez macierz i usuwanie elementów, bez przerywania pętli] (http://stackoverflow.com/q/9882284/1591669) – unor