JavaScript String split() 方法

定義和用法

split() 方法將字符串拆分為子字符串數組。

split() 方法返回新數組,不會更改原始字符串。

如果 (" ") 用作分隔符,則字符串在單詞之間進行拆分。

另請參閱:

slice() 方法

substr() 方法

substring() 方法

實例

例子 1

拆分單詞:

let text = "How are you doing today?";
const myArray = text.split(" ");

親自試一試

例子 2

拆分單詞,并返回第二個單詞:

let text = "How are you doing today?";
const myArray = text.split(" ");
let word = myArray[1];

親自試一試

例子 3

拆分字符,包括空格:

const myArray = text.split("");

親自試一試

例子 4

使用 limit 參數:

const myArray = text.split(" ", 3);

親自試一試

例子 5

將字符串拆分為字符并返回第二個字符:

const myArray = text.split("");

親自試一試

例子 6

使用字母作為分隔符:

const myArray = text.split("o");

親自試一試

例子 7

如果省略 separator 參數,則返回包含原始字符串的數組:

const myArray = text.split();

親自試一試

語法

string.split(separator, limit)

參數

參數 描述
separator

可選。用于拆分的字符串或正則表達式。

如果省略,則返回包含原始字符串的數組。

limit

可選。限制拆分數量的整數。

超出限制的項目被排除在外。

返回值

類型 描述
Array 包含被拆分值的數組。

技術細節

參數 separator

該參數是字符串或正則表達式,從該參數指定的地方分割 string

參數 limit

這個可選的整數指定返回的數組的最大長度。如果設置了該參數,返回的子串不會多于這個參數指定的數字。如果沒有設置該參數,整個字符串都會被分割,不考慮它的長度。

返回值

返回字符串數組。該數組是通過在 separator 指定的邊界處將字符串 string 分割成子串創建的。返回的數組中的子串不包括 separator 自身。

但是,如果 separator 是包含子表達式的正則表達式,那么返回的數組中包括與這些子表達式匹配的字串(但不包括與整個正則表達式匹配的文本)。

說明

split() 方法將創建并返回字符串數組,該數組中的元素是指定的字符串 string 的子串,最多具有 limit 個。這些子串是通過從頭到尾檢索字符串中與 separator 匹配的文本,在匹配文本之前和之后分割 string 得到的。返回的子串中不包括定界符文本(本部分結尾處提到的情況除外)。如果定界符從字符串開頭開始匹配,返回的數組的第一個元素是空串,即出現在定界符之前的文本。同樣,如果定界符與字符串的結尾匹配,返回的數組的最后一個元素也是空串(假定與 limit 沒有沖突)。

如果沒有指定 separator,那么它根本就不對 string 執行分割,返回的數組只有一個元素,而不分割字符串元素。如果 separator 是空串或與空串匹配的正則表達式,那么 string 中的每個字符之間都會被分割,返回的數組的長度與字符串長度相等(假定 limit 不小于該長度)(注意,這是一種特殊情況,因為沒有匹配第一個字符之前和最后一個字符之后的空串)。

前面說過,該方法返回的數組中的子串不包括用于分割字符串的定界符文本。但如果 separator 是包括子表達式的正則表達式,那么返回的數組中包括與這些子表達式匹配的子串(但不包括與整個正則表達式匹配的文本)。

注意:string.split() 執行的操作與 Array.join() 執行的操作相反。

瀏覽器支持

split() 是 ECMAScript1 (ES1) 特性。

所有瀏覽器都完全支持 ES1 (JavaScript 1997):

Chrome IE Edge Firefox Safari Opera
Chrome IE Edge Firefox Safari Opera
支持 支持 支持 支持 支持 支持

相關頁面

JavaScript 字符串

JavaScript 字符串方法

JavaScript 字符串搜索