Compare Revisions

Array.prototype.splice()

Change Revisions

Revision 238161:

Revision 238161 by ethertank on

Revision 238162:

Revision 238162 by zirak on

Title:
Array splice method
Array splice method
Slug:
JavaScript/Reference/Global_Objects/Array/splice
JavaScript/Reference/Global_Objects/Array/splice
Tags:
Array
Array
Content:

Revision 238161
Revision 238162
nn98    <h2>
99      Summary
100    </h2>
101    <p>
102      Changes the content of an array, adding new elements while 
 >removing old elements.
103    </p>
104    <table class="standard-table">
105      <thead>
106        <tr>
107          <th class="header" colspan="2">
108            Method of <a href="/en/JavaScript/Reference/Global_Ob
 >jects/Array" title="en/JavaScript/Reference/Global_Objects/Array"
 >><code>Array</code></a>
109          </th>
110        </tr>
111      </thead>
112      <tbody>
113        <tr>
114          <td>
115            Implemented in
116          </td>
117          <td>
118            JavaScript 1.2
119          </td>
120        </tr>
121        <tr>
122          <td>
123            ECMAScript Edition
124          </td>
125          <td>
126            ECMAScript 3rd Edition
127          </td>
128        </tr>
129      </tbody>
130    </table>
131    <h2>
132      Syntax
133    </h2>
134    <p>
135      <code><em>array</em>.splice(<em>index</em> , <em>howMany</e
 >m>[<em>,</em> <em>element1</em>[, ...[, <em>elementN</em>]]])</co
 >de><br>
136      <code><em>array</em>.splice(<em>index</em>[, <em>howMany</e
 >m>[, <em>element1</em>[, ...[, <em>elementN</em>]]]])</code>
137    </p>
138    <h2>
139      Parameters
140    </h2>
141    <dl>
142      <dt>
143        <code>index</code>
144      </dt>
145      <dd>
146        Index at which to start changing the array. If negative, 
 >will begin that many elements from the end.
147      </dd>
148    </dl>
149    <dl>
150      <dt>
151        <code>howMany</code>
152      </dt>
153      <dd>
154        An integer indicating the number of old array elements to
 > remove. If <code>howMany</code> is 0, no elements are removed. I
 >n this case, you should specify at least one new element. If no <
 >code>howMany</code> parameter is specified (second syntax above, 
 >which is a SpiderMonkey extension), all elements after <code>inde
 >x</code> are removed.
155      </dd>
156    </dl>
157    <dl>
158      <dt>
159        <code>element1, ..., element<em>N</em></code>
160      </dt>
161      <dd>
162        (Optional) The elements to add to the array. If you don't
 > specify any elements, <code>splice</code> simply removes element
 >s from the array.
163      </dd>
164    </dl>
165    <h2>
166      Returns
167    </h2>
168    <p>
169      An array containing the removed element(s).
170    </p>
171    <h2>
172      Description
173    </h2>
174    <p>
175      If you specify a different number of elements to insert tha
 >n the number you're removing, the array will have a different len
 >gth at the end of the call.
176    </p>
177    <h2>
178      Backward Compatibility
179    </h2>
180    <h3>
181      JavaScript 1.2
182    </h3>
183    <p>
184      The <code>splice</code> method returns the element removed,
 > if only one element is removed (<code>howMany</code> parameter i
 >s 1); otherwise, the method returns an array containing the remov
 >ed elements. Note that the last browser to use JavaScript 1.2 was
 > Netscape Navigator 4, so you can depend on <code>splice</code> a
 >lways returning an array.
185    </p>
186    <h2>
187      Examples
188    </h2>
n105// assumes a print function is definedn
n107print("myFish: " + myFish);n
nn198//removes 0 elements from index 2, and inserts "drum"
n110print("After adding 1: " + myFish);n200//myFish is ["angel", "clown", "drum", "mandarin", "surgeon"]
111print("removed is: " + removed);201//removed is [], no elements removed
nn203//removes 1 element from index 3
n114print("After removing 1: " + myFish);n205//myFish is ["angel", "clown", "drum", "surgeon"]
115print("removed is: " + removed);206//removed is ["mandarin"]
nn208//removes 1 element from index 2, and inserts "trumpet"
n118print("After replacing 1: " + myFish);n210//myFish is ["angel", "clown", "trumpet", "surgeon"]
119print("removed is: " + removed);211//removed is ["drum"]
nn213//removes 2 elements from index 0, and inserts "parrot", "anemone
 >" and "blue"
t122print("After replacing 2: " + myFish);t215//myFish is ["parrot", "anemone", "blue", "trumpet", "surgeon"]
123print("removed is: " + removed);
124</pre>
125    <p>
126      This script displays:
127    </p>
128    <pre class="eval">
129myFish: angel,clown,mandarin,surgeon
130After adding 1: angel,clown,drum,mandarin,surgeon
131removed is: 
132After removing 1: angel,clown,drum,surgeon
133removed is: mandarin
134After replacing 1: angel,clown,trumpet,surgeon
135removed is: drum
136After replacing 2: parrot,anemone,blue,trumpet,surgeon
137removed isangel,clown216//removed is ["angel", "clown"]

Back to History