delete arrayName[index]
where arrayName is any array, and
index is the number or name of the element
we want to set to undefined. The name
delete is misleading, frankly. It does
not remove an element from the array; it merely
sets the target element's value to
undefined. A delete
operation, therefore, is identical to assigning the
undefined value to an element. We can verify this
by checking the length property of an array after
deleting one of its elements:
var myList = ["a", "b", "c"];
trace(myList.length); // Displays: 3
delete myList[2];
trace(myList.length); // Still displays 3...the element at index 2 is undefined
// instead of "c", but it still exists
To truly delete elements, use splice( ) (to
delete them from the middle of an array), or use
shift( ) and pop(
) (to delete them from the beginning or end of an array).
Note that delete behaves differently with object
properties and named elements than with numbered elements. Using
delete on them permanently destroys properties
and named elements, leaving no trace of them.