хорошо, чтобы удалить те undefined
части, которые
a[0] = 'A';
a[1] = 'B';
В своем фрагменте вы заполняете элемент индексом 10
, который заставляет ECMAscript создать массив с 10 fields
. Не существует определений для всех этих полей между 1
и 10
, что означает, что они правильно undefined
.
Чтобы удалить эти поля, вы должны либо установить правильное значение, либо map
значения non-undefined
в новый массив, который будет бесполезен, если вы сначала создадите правильный массив.
Создайте истинное object
вместо массива (который на самом деле также является объектом), чтобы иметь желаемое поведение.
var a = {};
a[1] = 'A';
a[2] = 'B';
console.log(a);