split()方法根据指定分隔符将字符串分割为新数组,不修改原字符串;支持字符、字符串、正则表达式作分隔符,并可选limit参数限制数组长度,连续分隔符会产生空元素。

JavaScript 中字符串分割成数组主要用 split() 方法,它根据指定分隔符将字符串切开,返回一个新数组,原字符串不变。
用 split() 按字符或字符串分割
传入一个分隔符(可以是单个字符、多个字符或正则表达式),就能得到分割后的数组:
-
"a,b,c".split(",")→["a", "b", "c"] -
"hello world".split(" ")→["hello", "world"] -
"one-two-three".split("-")→["one", "two", "three"] -
"a1b2c".split(/\d/)→["a", "b", "c"](用正则匹配数字分割)
空字符串或特殊分隔符的处理
传入空字符串 "" 会把每个字符都拆成一项:
-
"abc".split("")→["a", "b", "c"] -
"??".split("")→ 在现代 JS 中能正确处理 emoji(UTF-16 代理对已自动支持) - 如果分隔符不存在,整个字符串作为唯一元素:
"abc".split("x")→["abc"]
限制返回数组长度
第二个参数可限制最多分割出几项,多余部分合并到最后一个元素里:
-
"a,b,c,d".split(",", 2)→["a", "b"] -
"x,y,z".split(",", 1)→["x"] -
"1|2|3|4".split("|", 3)→["1", "2", "3|4"]
常见易错点提醒
注意几个实际开发中容易忽略的地方:
- 分隔符是字符串时,只匹配**首次出现的完整子串**,不是全局替换逻辑
-
split()不修改原字符串,始终返回新数组 - 连续分隔符会产生空字符串项:
"a,,b".split(",")→["a", "", "b"],需要时可用.filter(Boolean)过滤 - 若需按空白字符(空格、换行、制表符等)统一拆分,推荐
str.split(/\s+/)并配合.filter(Boolean)
Java免费学习笔记:立即使用
解锁 Java 大师之旅:从入门到精通的终极指南











