1. Почитай про splice. Ты какую-то фигню пытаешься сделать
http://javascript.ru/array/splice
2. А нужен ли тебе splice если исходный и результирующий массив могут быть разными?
3. Отладчик останавливается там где ты ему говоришь. Там где остановился можно посмотреть значения переменных чтобы понять что пошло не так, а потом двигать дальше