使用Array类型的splice方法能够对数组元素进行插入、替换、删除。该方法讲直接影响当前的数组对象(与.slice(index1,index2)方法不一样)并返回被删除的数组项。javascript
参数:java
index :数组中元素的起始下标。数组
count :须要要被删除或替换的元素个数。code
elems :须要插入到数组中的项。对象
返回值 :返回从素组中被移除的项。ip
演示:it
<script type="text/javascript"> var items =["a","b","c","d","e"]; //删除元素,此时的参数只有index和count result = items.splice(1,2) //这个操做删除了示例中items数组中的元素["b","c"],并返回["b","c"]给result. //替换元素,当后面带了elems 参数,并且,count不等于0的时候表示替换 result = items.splice(1,2,"x","y") //这个操做使用元素"x","y"替换了示例中items数组中的元素["b","c"],并返回["b","c"] 给 result. //插入元素,携带了elems 参数,而且count等于0 则表示插入 result = items.splice(1,0,"x","y") //这个操做的结果是在示例中items数组的的"b"元素后插入["x","y"],返回值为空。 </script>
在本例中,咱们将建立一个新数组,并向其添加一个元素:class
<script type="text/javascript"> var arr = new Array(6) arr[0] = "George" arr[1] = "John" arr[2] = "Thomas" arr[3] = "James" arr[4] = "Adrew" arr[5] = "Martin" document.write(arr + "<br />") //因为count=0 而且 有elems 参数,因此表示插入元素,在下标为2的地方插入,原先下标为2的后移 arr.splice(2,0,"William") document.write(arr + "<br />") </script>
输出:方法
George,John,Thomas,James,Adrew,Martin George,John,William,Thomas,James,Adrew,Martin
在本例中咱们将替换位于 index 2 的元素:co
<script type="text/javascript"> var arr = new Array(6) arr[0] = "George" arr[1] = "John" arr[2] = "Thomas" arr[3] = "James" arr[4] = "Adrew" arr[5] = "Martin" document.write(arr + "<br />") //有elems 参数,因此表示替换或者插入,由于count不等于0,因此表示替换掉下标为2的元素 arr.splice(2,1,"William") document.write(arr) </script>
输出:
George,John,Thomas,James,Adrew,Martin George,John,William,James,Adrew,Martin
在本例中咱们将删除从 index 2 ("Thomas") 开始的三个元素,并添加一个新元素 ("William") 来替代被删除的元素:
<script type="text/javascript"> var arr = new Array(6) arr[0] = "George" arr[1] = "John" arr[2] = "Thomas" arr[3] = "James" arr[4] = "Adrew" arr[5] = "Martin" document.write(arr + "<br />") //由于elems 参数,并且count不等于0,因此表示替换,并且替换的count个数为3,使用"William"来替换 arr.splice(2,3,"William") document.write(arr) </script>
输出:
George,John,Thomas,James,Adrew,Martin George,John,William,Martin