Removing Elements from an Array
You can remove elements from an array using the
delete
operator, by reducing the
length
property of an array, or using one of the
built-in array methods.
Removing Elements with the delete Operator
The
delete
operator
sets an array element to undefined
, using the
following syntax:
deletearrayName
[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.
Removing Elements with the length Property
Earlier we
used the length
property to add elements to an array. We can also set the
array’s length
property ...
Get ActionScript: The Definitive Guide now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.