使用js实现splice方法
splice无疑是最强大的数组方法,出于兴趣,现在使用js来实现splice方法,实现之前必须了解splice方法的功能是怎么样的
功能需求:删除,插入,替换,而这三个功能是通过改变函数参数来实现的
两个参数情况(删除):第一个参数表示要删除项的索引,第二个参数表示要删除的项数,
三个以上包括三个参数情况(插入和替换):第一参数表示起始位置,第二个参数表示要删除的项数(该项为0的话为插入,大于0的话为替换),第三个及以后的参数表示要插入的项。
实现思路描述:要理解js函数中的参数的概念,参数在内部是用一个数组来表示的,在函数体内是通过arguments对象来访问参数数组的。所以可以通过arguments来实现此方法。
实现代码:
复制代码
<script type="text/javascript">
var arr=[1,2,3,4,5,6,7,8,9];
//使用js实现splice方法,写的比较粗糙,对参数判断不够细腻
function jsSplice(){
var index=arguments[0];
var num=arguments[1];
var len=arguments.length;
var result=[],content=[];
//删除
if(len==2){
result=arr.slice(0,index).concat(arr.slice(index+num,arr.length));
console.log(result)
}else if(len>2){
for(var i=2;i<len;i++){
content.push(arguments[i]);
}
//插入
if(num==0){
result=arr.slice(0,index).concat(content,arr.slice(index,arr.length));