1 回答

TA貢獻(xiàn)1827條經(jīng)驗(yàn) 獲得超4個(gè)贊
/\s*,\s*/這個(gè)正則匹配的是0到多個(gè)空白符,然后是逗號(hào),然后是0到多個(gè)空白符;
split(/\s*,\s*/)和split(',')的區(qū)別是要不要處理逗號(hào)前后的空白符;
一般情況下,我們認(rèn)為字符串前后的空白符都是沒(méi)有什么作用的,所以會(huì)使用string.trim()方法來(lái)去掉前后的空白符。
所以,假設(shè)需要處理的字符串是"Nancy , Lucy",我們想要的結(jié)果是["Nancy", "Lucy"]
那么,使用split(/\s*,\s*/)的結(jié)果就是想要的結(jié)果:
var str = "Nancy , Lucy"
str.split(/\s*,\s*/) // ["Nancy", "Lucy"]
如果使用split(','),則我們需要對(duì)split之后的數(shù)組的每個(gè)元素多進(jìn)行一次trim()操作:
var str = "Nancy , Lucy"
var result = str.split(',') // ["Nancy ", " Lucy"]
result = result.map(item => item.trim()) // 此時(shí)result為["Nancy", "Lucy"]
添加回答
舉報(bào)