substring() 方法用於提取字符串中介於兩個指定下標之間的字符。spa
stringObject.substring(start,stop)
參數 | 描述 |
---|---|
start | 必需。一個非負的整數,規定要提取的子串的第一個字符在 stringObject 中的位置。 |
stop | 可選。一個非負的整數,比要提取的子串的最後一個字符在 stringObject 中的位置多 1。code 若是省略該參數,那麼返回的子串會一直到字符串的結尾。對象 |
一個新的字符串,該字符串值包含 stringObject 的一個子字符串,其內容是從 start 處到 stop-1 處的全部字符,其長度爲 stop 減start。blog
substring() 方法返回的子串包括 start 處的字符,但不包括 stop 處的字符。索引
若是參數 start 與 stop 相等,那麼該方法返回的就是一個空串(即長度爲 0 的字符串)。若是 start 比 stop 大,那麼該方法在提取子串以前會先交換這兩個參數。字符串
substr() 方法可在字符串中抽取從 start 下標開始的指定數目的字符。get
stringObject.substr(start,length)
參數 | 描述 |
---|---|
start | 必需。要抽取的子串的起始下標。必須是數值。若是是負數,那麼該參數聲明從字符串的尾部開始算起的位置。也就是說,-1 指字符串中最後一個字符,-2 指倒數第二個字符,以此類推。 |
length | 可選。子串中的字符數。必須是數值。若是省略了該參數,那麼返回從 stringObject 的開始位置到結尾的字串。 |
一個新的字符串,包含從 stringObject 的 start(包括 start 所指的字符) 處開始的 length 個字符。若是沒有指定 length,那麼返回的字符串包含從 start 到 stringObject 的結尾的字符。string
slice() 方法可提取字符串的某個部分,並以新的字符串返回被提取的部分。console
stringObject.slice(start,end)
參數 | 描述 |
---|---|
start | 要抽取的片段的起始下標。若是是負數,則該參數規定的是從字符串的尾部開始算起的位置。也就是說,-1 指字符串的最後一個字符,-2 指倒數第二個字符,以此類推。 |
end | 緊接着要抽取的片斷的結尾的下標。若未指定此參數,則要提取的子串包括 start 到原字符串結尾的字符串。若是該參數是負數,那麼它規定的是從字符串的尾部開始算起的位置。 |
一個新的字符串。包括字符串 stringObject 從 start 開始(包括 start)到 end 結束(不包括 end)爲止的全部字符。table
String 對象的方法 slice()、substring() 和 substr() (不建議使用)均可返回字符串的指定部分。slice() 比 substring() 要靈活一些,由於它容許使用負數做爲參數。slice() 與 substr() 有所不一樣,由於它用兩個字符的位置來指定子串,而 substr() 則用字符位置和長度來指定子串。
還要注意的是,String.slice() 與 Array.slice() 類似。
以上截自w3school
substring ==>> 截取兩個參數之間的字符,並返回
substr ==>> 從第一個參數指定的位置開始,截取以第二個參數指定的長度字符
slice ==>>
e.g:
var test = '0123456789'; console.log(test.substring(-2, -5)); // '' ,空字符串 console.log(test.substring(2, 5)); // 234 console.log(test.substring(2, 11)); // 23456789 console.log(test.substring(-2, 11)); // 0123456789 console.log(test.substring(2, -11)); // 01 console.log(test.substring(-2, 5)); // 01234 console.log(test.substring(5)); // 56789 console.log(test.substring(11)); // '' ,空字符串 console.log(test.substring(10)); // '' ,空字符串 console.log(test.substring(-5)); // 0123456789 console.log(test.substr(-3, -4)); // '' ,空字符串 console.log(test.substr(-3, 4)); // 789 console.log(test.substr(-3, 2)); // 78 console.log(test.substr(3, 4)); // 3456 console.log(test.substr(3, -4)); // '' ,空字符串 console.log(test.substr(3, 0)); // '' ,空字符串 console.log(test.substr(3, 14)); // 3456789 console.log(test.substr(3)); // 3456789 console.log(test.substr(-3)); // 789 console.log(test.substr(-14)); // 0123456789 console.log(test.substr(14)); // '' ,空字符串 console.log(test.slice(-3, -6)); // '' ,空字符串 console.log(test.slice(-3, -1)); // 78 console.log(test.slice(-3, 1)); // '' ,空字符串 console.log(test.slice(-3, 7)); // '' ,空字符串 console.log(test.slice(-3, 8)); // 7 console.log(test.slice(3, -8)); // '' ,空字符串 console.log(test.slice(3, -7)); // '' ,空字符串 console.log(test.slice(3, -1)); // 345678 console.log(test.slice(3, 1)); // '' ,空字符串 console.log(test.slice(3, 7)); // 3456 console.log(test.slice(3, 14)); // 3456789 console.log(test.slice(3)); // 3456789 console.log(test.slice(14)); // '' ,空字符串