Метод «delete» не удалит элемент из массива, он просто задаст его значение в «undefined».
myArray = [''a'', ''b'', ''c'', ''d'']; // ["a", "b", "c", "d"] delete myArray[0]; // myArray: [undefined, "b", "c", "d"] myArray.splice(0, 2); // myArray: ["c", "d"]