Индексы можно сохранить только преобразовав массив в объект. Покажите пример массива, который вы хотите очистить от пустых значений. Можно сделать так:
const arr = ['zero', 'one', 'two', '', 'four', '', '', 'seven'];
let obj = {};
arr.forEach((n, i) => obj[i] = n);
for (let k in obj) {
if (!obj[k]) delete obj[k];
}
console.log(obj); // { 0: "zero", 1: "one", 2: "two", 4: "four", 7: "seven" }