Создайте новый массив, и записывайте в него нужные значения. Вы удаляете из массива объект, и его длина соответственно уменьшается. А итераций у цикла будет столько, сколько было элементов в начале. И когда цикл доходит до undefined - вылетает ошибка, что у undefined нет свойства ie