詳解JS截取字元串中的一部分

一、substr()函數的使用

字元串的截取是編程中最常見的操作之一,JS提供了多種常用的截取字元串的函數,下面我們主要學習一下substr()函數。

substr()函數接收兩個參數,第一個參數表示要截取的字元串的起始位置,第二個參數表示要截取的長度。比如:

let str = 'Lorem ipsum dolor sit amet'; 
let subStr = str.substr(6, 5); 
console.log(subStr); 
//輸出:ipsum

上述代碼的作用是從字元串「Lorem ipsum dolor sit amet」中截取從第7個字元開始,長度為5個字元的子串,即「ipsum」。需要注意的是,第一個參數是從0開始索引的,而不是從1開始索引的。如果第二個參數被省略,則從起始位置一直截取到字元串結尾。

同時,substr()函數也支持負數作為參數,如下所示:

let str = 'Lorem ipsum dolor sit amet'; 
let subStr = str.substr(-4); 
console.log(subStr); 
//輸出:amet

上述代碼的作用是從字元串「Lorem ipsum dolor sit amet」中截取從倒數第4個字元開始的子串,即「amet」。負數表示從字元串末尾倒數第幾個字元開始截取。

二、substring()函數的使用

JS的另一個常用的截取字元串的函數是substring()函數。

substring()函數接收兩個參數,第一個參數表示起始位置,第二個參數表示截取的終止位置(不包含終止位置的字元)。如下所示:

let str = 'Lorem ipsum dolor sit amet'; 
let subStr = str.substring(6, 11); 
console.log(subStr); 
//輸出:ipsum

上述代碼的作用是從字元串「Lorem ipsum dolor sit amet」中截取從第7個字元(包含)開始,到第12個字元(不包含)結束的子串,即「ipsum」。

需要注意的是,如果第一個參數大於第二個參數,則substring()函數會自動交換兩個參數的位置,並返回相同的子串。而且,如果參數是負數或者不傳參數,則會被視為0。

三、slice()函數的使用

除了substr()和substring()函數,JS還提供了另一個常用的截取字元串的函數slice()。

slice()函數和substring()函數的功能類似,也有兩個參數,第一個參數表示起始位置,第二個參數表示終止位置(不包含終止位置的字元)。如下所示:

let str = 'Lorem ipsum dolor sit amet'; 
let subStr = str.slice(6, 11); 
console.log(subStr); 
//輸出:ipsum

上述代碼的作用和前面substring()函數一樣,從字元串「Lorem ipsum dolor sit amet」中截取從第7個字元(包含)開始,到第12個字元(不包含)結束的子串,即「ipsum」。

值得注意的是,slice()函數也支持負數作為起始位置和終止位置。如果起始位置是負數,表示從字元串末尾倒數第幾個字元開始截取。如果終止位置是負數,表示從字元串末尾倒數第幾個字元結束截取。

四、總結

以上就是JS常用的三種字元串截取函數的使用方法。當然,對於一些複雜的字元串截取需求,我們可能需要用到正則表達式等高級方法。

需要注意的是,在使用這些函數時,我們必須要小心處理參數的含義,否則很容易引起不必要的錯誤。另外,由於字元串是不可變的,因此這些函數並不會修改原來的字元串,而是返回一個新的字元串。

最後,我們建議在實際編程之前,請務必進行充分的測試,以確保你的代碼能夠正確地處理各種邊界情況。

原創文章,作者:SZISA,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/369966.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
SZISA的頭像SZISA
上一篇 2025-04-14 02:23
下一篇 2025-04-18 13:40

相關推薦

發表回復

登錄後才能評論