slice,substr和substring的區別

2022-02-20 19:07:44 字數 1036 閱讀 1842

首先,他們都接收兩個引數,slice和substring接收的是起始位置和結束位置(不包括結束位置),而substr接收的則是起始位置和所要返回的字串長度。直接看下面例子:

1var

test ='

hello world';

23alert(test.slice(4,

7));

//o w

4alert(test.substring(4,

7));

//o w

5alert(test.substr(4,

7));

//o world

這裡有個需要注意的地方就是:substring是以兩個引數中較小乙個作為起始位置,較大的引數作為結束位置。

如:alert(test.substring(7,4));//o w

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

1var

test ='

hello world';

23alert(test.slice(-3

)); //rld

4alert(test.substring(-3

)); //hello world

5alert(test.substr(-3

)); //rld

6alert(test.slice(3,

-4)); //lo w

7alert(test.substring(3,

-4)); //hel

8alert(test.substr(3,

-4)); //空字串

1注意:ie對substr接收負值的處理有錯,它會返回原始字串。

最後,沒了。

**:

slice,substr和substring的區別

首先,他們都接收兩個引數,slice和substring接收的是起始位置和結束位置 不包括結束位置 而substr接收的則是起始位置和所要返回的字串長度。直接看下面例子 1 var test hello world 2 3 alert test.slice 4,7 o w 4 alert test....

slice,substr和substring的區別

首先,他們都接收兩個引數,slice和substring接收的是起始位置和結束位置 不包括結束位置 而substr接收的則是起始位置和所要返回的字串長度。直接看下面例子 var test hello world alert test.slice 4,7 o w alert test.substrin...

slice,substr和substring的區別

首先,他們都接收兩個引數,slice和substring接收的是起始位置和結束位置 不包括結束位置 而substr接收的則是起始位置和所要返回的字串長度。直接看下面例子 1 var test hello world 2 3 alert test.slice 4,7 o w 4 alert test....