
This is the Title of the Book, eMatter Edition
Copyright © 2007 O’Reilly & Associates, Inc. All rights reserved.
Removing Elements from an Array
|
261
Removing Elements from an Array
You can remove elements from an array by using the delete operator, reducing the
length property of an array, or using one of the built-in array methods.
Removing Numbered Elements with the delete Operator
The delete operator sets an array element to undefined, using the following syntax:
delete arrayName[index]
where arrayName is any array and index is the number or name of the element we
want to set to undefined. When used with numbered (not named) elements, the
name delete is misleading, frankly. It does not remove a numbered element from the
array; it merely sets the target element’s value to
undefined.Adelete operation, there-
fore, 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 named elements than with ...