數(shù)組對(duì)象的slice方法從數(shù)組中分離出一個(gè)子數(shù)組,功能類似于字符串對(duì)象的substring()方法。為了演示方便,我們創(chuàng)建一個(gè)值為[0,1,2,3,4,5,6,7,8,9,0]的數(shù)組。這樣就形成了位置和值的對(duì)應(yīng),即,arr[0]的值恰好為0。
JavaScript代碼
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www./TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www./1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=gb2312" /> <title>無(wú)標(biāo)題文檔</title> <script type="text/javascript"> var arr = [0,1,2,3,4,5,6,7,8,9,10]; var arr03 = arr.slice(0,3); var arr3 = arr.slice(3); var arr0 = arr.slice(0); alert(arr03.join()); alert(arr3.join()); alert(arr0.join()); alert(arr.join()); </script> </head> <body> </body> </html> 可以發(fā)現(xiàn),slice(0,3)會(huì)返回[0,1,2],也就是說(shuō),只返回位置0、1和2,而不包括3。由此我們可以知道,傳遞給slice的兩個(gè)參數(shù)分別為,起始字符的位置,結(jié)束字符的位置+1。 與字符串的substring方法類似,數(shù)組的slice方法也可以省略第二個(gè)參數(shù),表示一直到數(shù)組結(jié)束。例如:arr.slice(3); arr.slice(0); arr.slice(3)表示從數(shù)組的第三個(gè)元素開始,一直到數(shù)組結(jié)尾的子數(shù)組。我們可以推測(cè),arr.slice(0)將會(huì)返回?cái)?shù)組本身。
另外,與push、pop、shift、unshift方法不同的是,上述方法都是對(duì)元素組本身進(jìn)行操作,而數(shù)組的slice方法并不對(duì)元素組進(jìn)行任何操作,slice方法截取的子數(shù)組是作為slice方法的返回參數(shù)輸出。由alert(arr.join());方法可知,arr數(shù)組并沒有任何改變。 |
|