slice 和splice
阿新 • • 發佈:2018-12-08
var arr=["a","b","c","d","e","f"];
splice(index,num,item)方法對陣列或字串做刪除,修改,新增操作,第一位引數可正可負,為正表示正著數,為負則表示倒著數,第二位引數,要操作元素的個數,第三位引數,需要新增到陣列的元素
var result1=arr.splice(2);//只給一位引數,下標位置起,後邊所有元素被刪除,並將刪除元素返回 此時結果:result1=["c","d","e","f"];arr=["a","b"] var result2=arr.splice(2,0);//第二個引數為0,不會做任何修改,返回結果為空 var result3=arr.splice(2,2);//下標位置起,刪除後2個元素,並返回刪除元素 此時結果:result3=["c", "d"];arr=["a", "b", "e", "f"]
var result4=arr.splice(1,0,"g");//下標位置後新增元素“g”,返回結果為空 此時結果:result4=[];arr=["a", "g", "b", "c", "d", "e", "f"]
var result5=arr.splice(1,3,"g");//下標位置後,先刪除後3個元素並返回刪除元素,再向陣列新增元素“g”
此時結果:result5=["b", "c", "d"];arr=["a", "g", "e", "f"]
var result6=arr.splice(-2);//給一位引數且為負數,從陣列最末倒數,刪除2個元素,並返回結果 此時結果result6=["e", "f"];arr=["a", "b", "c", "d"]
slice(start,end)方法從陣列或字串中返回選定的元素,只返回結果,不作修改,此方法有兩個引數,第一個表示開始位置;第二個,表示終點位置
var result1=arr.slice(0,2);//0下標開始,2下標結束
此時結果:result1=["b", "c", "d"];arr=["a","b","c","d","e","f"]
var result2=slice(2);//獲取下標以後所有的元素
此時結果:result2=["c", "d", "e", "f"]
var result3=slice(-3);//獲取倒數3個元素,下標從最後一個元素開始
var result4=slice(-5,-3);//起點下標為倒數第五個開始,到倒數第四個的距離,即時是倒數,也是從0開始