首頁 > web前端 > js教程 > javascript中slice,SubString和SubStr的差別

javascript中slice,SubString和SubStr的差別

yulia
發布: 2018-09-08 16:34:04
原創
1708 人瀏覽過


slice() 定義和用法
slice() 方法可從現有的陣列中傳回選定的元素。
string.slice(start, end)提取一個字串
string.substring(start, end)提取一個字串,end不支援負數
string.substr(start, len)提取一個長度為len的字串

1、slice和substring接收的是起始位置和結束位置(不包括結束位置),而substr接收的則是起始位置和要傳回的字串長度。直接看下面範例:

 var test = 'hello world';
 alert(test.slice(4,7));             //o w
 alert(test.substring(4,7));         //o w
 alert(test.substr(4,7));            //o world\
登入後複製

2、substring是以兩個參數中較小一個作為起始位置,較大的參數作為結束位置。如:

 alert(test.substring(7,4)); //o w
登入後複製

3、當接收的參數是負數時,slice會將它字串的長度與對應的負數相加,結果作為參數;substr則僅僅是將第一個參數與字串長度相加後的結果作為第一個參數;substring則乾脆將負參數都直接轉換為0。測試程式碼如下:

var test = 'hello world';
alert(test.slice(-3));         //rld
alert(test.substring(-3));     //hello world
alert(test.substr(-3));        //rld
alert(test.slice(3,-4));       //lo w
alert(test.substring(3,-4));   //hel
alert(test.substr(3,-4));      //空字符串
登入後複製

定義和用法

slice() 方法可從現有的陣列中傳回選定的元素。
語法:arrayObject.slice(start,end)
start:必需。規定從何處開始選取。如果是負數,那麼它規定從數組尾部開始算起的位置。也就是說,-1指最後一個元素,-2指倒數第二個元素,以此類推。
end:可選。規定從何處結束選取。此參數是數組片斷結束處的數組下標。如果沒有指定該參數,那麼切分的陣列包含從 start到陣列結束的所有元素。如果這個參數是負數,那麼它規定的是從陣列尾部開始算起的元素。
傳回值:傳回一個新的陣列,包含從 start到 end (不包含該元素)的 arrayObject中的元素。
說明:請注意,該方法並不會修改數組,而是傳回一個子數組。如果想要刪除陣列中的一段元素,應該使用方法 Array.splice()。

附註:您可使用負值從陣列的尾端選取元素。
       如果 end未被規定,那麼 slice()方法會選取從 start到陣列結尾的所有元素。

範例:在本例中,我們將建立一個新數組,然後顯示從中選取的元素:

<script type="text/javascript">
var arr = new Array(3)
arr[0] = "George"
arr[1] = "John"
arr[2] = "Thomas"
document.write(arr + "<br />")
document.write(arr.slice(1) + "<br />")
document.write(arr)
</script>
登入後複製

輸出:
George,John,Thomas
John, Thomas
George,John,Thomas

 

#

以上是javascript中slice,SubString和SubStr的差別的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板