SVGLengthList
=============

SVG length list interface
-------------------------

The `SVGLengthList` defines a list of `SVGLength` objects.

An `SVGLengthList` object can be designated as read only, which means that attempts to modify the object will result in an exception being thrown.

An `SVGLengthList` is indexable and can be accessed like an array.

### Interface overview

|  |  |
| --- | --- |
| Also implement | *None* |
| Methods | * `void clear()`
* `SVGLength`
`initialize(in `SVGLength`
*newItem*)`
* `SVGLength`
`getItem(in unsigned long *index*)`
* `SVGLength`
`insertItemBefore(in `SVGLength`
*newItem*, in unsigned long *index*)`
* `SVGLength` `replaceItem(``in `SVGLength` *newItem*, in
unsigned long *index*``)`
* `SVGLength`
`removeItem(in unsigned long *index*)`
* `SVGLength`
`appendItem(in `SVGLength`
*newItem*)`
 |
| Properties | * readonly unsigned long `numberOfItems`
* readonly unsigned long
 `length` 
Non-standard
 |
| Normative document | SVG 1.1 (2nd Edition) |

Instance properties
-------------------

| Name | Type | Description |
| --- | --- | --- |
| `numberOfItems` | unsigned long | The number of items in the list. |
| `length` 
Non-standard
 | unsigned long | The number of items in the list. |

Instance methods
----------------

| Name & Arguments | Return | Description |
| --- | --- | --- |
| `**clear**()` | *void* | 
 Clears all existing current items from the list, with the result being
 an empty list.

**Exceptions:*** a `DOMException` with code
 `NO_MODIFICATION_ALLOWED_ERR` is raised when the list
 corresponds to a read only attribute or when the object itself is
 read only.
 |
| `**initialize**(``in `SVGLength` *newItem*``)` | `SVGLength` | 
 Clears all existing current items from the list and re-initializes the
 list to hold the single item specified by the parameter. If the
 inserted item is already in a list, it is removed from its previous
 list before it is inserted into this list. The inserted item is the
 item itself and not a copy. The return value is the item inserted into
 the list.

**Exceptions:*** a `DOMException` with code
 `NO_MODIFICATION_ALLOWED_ERR` is raised when the list
 corresponds to a read only attribute or when the object itself is
 read only.
 |
| `**getItem**(in unsigned long *index*)` | `SVGLength` | 
 Returns the specified item from the list. The returned item is the
 item itself and not a copy. Any changes made to the item are
 immediately reflected in the list. The first item is number 0.

**Exceptions:*** a `DOMException` with code
 `NO_MODIFICATION_ALLOWED_ERR` is raised when the list
 corresponds to a read only attribute or when the object itself is
 read only.
 |
| `**insertItemBefore**(in
`SVGLength` *newItem*, in unsigned
long *index*)` | `SVGLength` | 
 Inserts a new item into the list at the specified position. The first
 item is number 0. If `newItem` is already in a list, it is
 removed from its previous list before it is inserted into this list.
 The inserted item is the item itself and not a copy. If the item is
 already in this list, note that the index of the item to insert before
 is before the removal of the item. If the `index` is equal
 to 0, then the new item is inserted at the front of the list. If the
 index is greater than or equal to `numberOfItems`, then the
 new item is appended to the end of the list.

**Exceptions:*** a `DOMException` with code
 `NO_MODIFICATION_ALLOWED_ERR` is raised when the list
 corresponds to a read only attribute or when the object itself is
 read only.
 |
| `**replaceItem**(``in `SVGLength` *newItem*, in unsigned
long *index*``)` | `SVGLength` | 
 Replaces an existing item in the list with a new item. If
 `newItem` is already in a list, it is removed from its
 previous list before it is inserted into this list. The inserted item
 is the item itself and not a copy. If the item is already in this
 list, note that the index of the item to replace is before the removal
 of the item.

**Exceptions:*** a `DOMException` with code
 `NO_MODIFICATION_ALLOWED_ERR` is raised when the list
 corresponds to a read only attribute or when the object itself is
 read only.
* a `DOMException` with code
 `INDEX_SIZE_ERR` is raised if the index number is greater
 than or equal to `numberOfItems`.
 |
| `**removeItem**(in unsigned long *index*)` | `SVGLength` | Removes an existing item from the list.
**Exceptions:*** a `DOMException` with code
 `NO_MODIFICATION_ALLOWED_ERR` is raised when the list
 corresponds to a read only attribute or when the object itself is
 read only.
* a `DOMException` with code
 `INDEX_SIZE_ERR` is raised if the index number is greater
 than or equal to `numberOfItems`.
 |
| `**appendItem**(in `SVGLength`
*newItem*)` | `SVGLength` | 
 Inserts a new item at the end of the list. If `newItem` is
 already in a list, it is removed from its previous list before it is
 inserted into this list. The inserted item is the item itself and not
 a copy.

**Exceptions:*** a `DOMException` with code
 `NO_MODIFICATION_ALLOWED_ERR` is raised when the list
 corresponds to a read only attribute or when the object itself is
 read only.
 |

Browser compatibility
---------------------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.