Почему при удалении сохраняются элементы массива?

Сегодня я наткнулся на вопрос ее e on Stack Overflow - Как удалить объекты из ассоциативного массива javascript?. Что меня поразило, так это то, что принятый ответ одновременно вводил в заблуждение и получил большое количество голосов, поэтому я выделил возможную ловушку.

Однако, собирая корректирующий ответ, я понял, что понятия не имею, почемудля удаленияимеет смысл сохранять элементы присваиватьнеопределеннымивместо удаления.

var elements = new Array()
elements.push(NaN)
elements.push(NaN)
elements.push(NaN)
delete elements[1]
console.log("number of elements: ", elements.length)   // returns 3

Есть ли в этом смысл?

11
задан Community 23 May 2017 в 12:08
поделиться