一、基本介紹
在JavaScript中,字符串截取函數大概有兩個常用的:substring和slice。這兩個方法都可以用來截取字符串中的一部分,並且用法類似,都可以傳入兩個參數。它們的不同之處在於當傳入的參數為負數時,slice會將其解釋為從字符串末尾開始倒數的位置,而substring則會在這種情況下將傳入的參數轉化為0。
let str = "hello, world!"; console.log(str.substring(2, 6)); // "llo," console.log(str.slice(2, 6)); // "llo," console.log(str.substring(-3, 10)); // "hello, wo" console.log(str.slice(-3, 10)); // "lo, wo"
二、截取字符串到末尾
使用substring截取字符串時,可以只傳入一個參數,表示從該位置開始一直截取到字符串末尾。下面是幾個例子:
let str = "hello, world!"; console.log(str.substring(2)); // "llo, world!" console.log(str.substring(-3)); // "hello, world!" console.log(str.substring(100)); // ""
三、截取字符串末尾幾位
我們可以使用substring截取字符串末尾的幾個字符,可以通過傳入起始索引為負數的方式進行。下面是一個例子:
let str = "hello, world!"; console.log(str.substring(str.length - 5)); // "world!" console.log(str.substring(str.length - 8)); // "lo, world!"
四、截取指定長度的字符串
有時候需要截取指定長度的字符串,可以通過將起始索引和結束索引計算出來進行。下面是一個例子:
let str = "hello, world!"; let start = 2; let length = 4; let end = start + length; console.log(str.substring(start, end)); // "llo,"
五、關於漢字的處理
在JavaScript中,一個漢字佔用兩個字符,我們需要做些額外的處理才能保證正確截取漢字。下面是一個例子:
let str = "張三是個好人"; let start = 0; let length = 4; let end = start + length; let chineseCharacters = /[\u4e00-\u9fa5]/g; let chineseLength = str.match(chineseCharacters) ? str.match(chineseCharacters).length : 0; let realStart = start - chineseLength; let realEnd = end - chineseLength; console.log(str.substring(realStart, realEnd)); // "張三是"
六、小結
通過本文的介紹,我們了解到了jssubstring截取字符串的一些使用方法和技巧,可以更加靈活地處理字符串。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/190375.html