Wenn ich versuche, dies in jsfiddle auszuführen, friert die Seite ein. jsfiddle friert auch ein, wenn ich anstelle von i einen spezifischen Index verwende (arr.splice(2,0,'limes')
) oder versuche, Elemente zu entfernen (arr.splice(2,1)
). Wenn ich dies ohne die for-Schleife mache und stattdessen einen bestimmten Index wähle, wird es funktionieren. Was ist hier falsch? Gibt es eine Möglichkeit, Spleiß innerhalb einer For-Schleife (Hinzufügen, nicht Entfernen von Elementen) zu machen?Warum funktioniert die Spleißung nicht in dieser for-Schleife?
Wenn ich FreeCodeCamp Editor mit diesem Code verwenden, wird es nicht einfrieren, aber es gibt mir das ursprüngliche Array zurück, als ob Spleiß nie verwendet wurde. Wenn ich ihm eine Variable zuweise (var rem = arr.splice(i,1)
in einer for-Schleife), gibt es jedoch die entfernten Elemente zurück, ohne das Array selbst tatsächlich zu modifizieren (das Array bleibt genau gleich).
Gibt es eine benutzerdefinierte Funktion für 'splice' im Array Prototyp? – RamenChef
'arr.splice (i ++, 0, 'Limes');' <- post-increment 'i', so dass die nächste Iteration der Schleife nicht darauf trifft, wenn das übereinstimmende Element vorwärts geschoben wird. –
Versuchen Sie: 'arr.splice (arr.IndexOf ('Birnen'), 0, 'Limes')' ' –