一、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