JavaScript中的函数splice() 函数使用

来源:互联网 发布:mac版是什么意思 编辑:程序博客网 时间:2024/05/20 16:45

大二接触JavaScript初期,学习函数中有一道题:

定义一个2个参数的函数。第1个参数是一个数组,第2个参数是需要删除的元素。函数功能,在第1个实参数组中查找第2个实参提供的值,找到则删除该元素(有几个删除几个),如果删除的元素不是最后一个元素,需要把后边的元素依次向前移动。输出删除前后形参数组和实参数组中的所有元素。实参数组【3,78,34,123,4,5,66,34,55】,删除34。

 

  在规定的数组里的查找与删除,有点类似于C语言中的指针。

 1 <!DOCTYPE html> 2 <html> 3 <head> 4  5 <title>测试</title> 6 <script> 7     function delArr(arr,x){ 8         var i=arr.length; 9         while(i--){10             if(arr[i]==x){11                 arr.splice(i,1);12                 return arr;13             }14         }15     }16     var arr=[3,78,34,123,4,5,66,34,55];17     alert(arr);18     alert(delArr(arr,34));19     20     21 </script>22 </head>23 24 <body>25 26 </body>27 28 </html>

 

js  splice() 

定义和用法

splice() 方法向/从数组中添加/删除项目,然后返回被删除的项目。

注释:该方法会改变原始数组。

 

在javascript中splice()方法有如下3种方式:

删除——可以删除任意数量的项,只需要指定2个参数:要删除的第一项的位置和要删除项的项数。

例如,splice(0,2)    会删除数组中的前两项。

插入——可以向指定位置插入任意数量的项,只需要提供3个参数:插入起始位置、0(要删除的项数)和要插入的项。 如果要插入多个项,可以再传入第四、第五,一直任意多个项。

例如,splice(2,0,”red”,”green”)  会从位置2开始插入字符串“red”和”green”。

替换——即删除和插入数量相等项数的综合应用,可以指向指定位置插入任意数量的项,且同时删除任意数量的项,只需要指定3个指定参数:起始位置、要删除的项数和要插入的任意数量项。 插入的项数是不必与删除的项数相等。

提示和注释

注释:请注意,splice() 方法与 slice() 方法的作用是不同的,splice() 方法会直接对数组进行修改。

举例:


 1 <script> 2 var colors = ["red", "green", "blue"]; 3 var removed = colors.splice(0,1);  //删除第一项 4 alert(colors);  //green,blue 5 alert(removed);  //red,返回数组中值包含一项 6  7 removed = colors.splice(1, 0, "yellow", "orange");  //从位置1开始插入两项 8 alert(colors);  //green,yellow,organge,blue 9 alert(removed);  //返回的是一个空数组10 11 removed = colors.splice(1, 1, "red", "purple");  //插入两项,删除一项12 alert(colors);  //green,red,purple,orange,blue13 alert(remove);  //yellow, 返回的数组中只包含一项14 </script>

 

 

 

参考来源:http://www.cnblogs.com/pumushan/p/5507862.html

原创粉丝点击