关于JavaScript中split的参数问题!谢谢!

我想问一下为什么 第四行的结果是,,,,,,,?谢谢!

[^\,]+表示除了逗号之外的其他任意字符,也就是说把字符串中的red、blue、green、yellow都作为分隔符,那么分割后的数组就是三个逗号以及前后各一个空字符串,总共5个元素
温馨提示:答案为网友推荐,仅供参考
第1个回答  2015-01-10
理解这个问题可以分一下步骤进行,
首先正则表达式/[^\,]+/的含义,表示的是由一个或多个非逗号的元素组成的单元,对应到文中就是red green等几个单词;
其次,对于split函数而言,其第一个参数是被识别为分隔符的元素,比如
'ABABABA'.split('A') //得到["", "B", "B", "B", ""]
与'ABABABA'.split(/A/)相同
再然后,上面那个例子的/A/扩展为/[^\,/+/ 再将B替换为逗号,就得到了文中的结果.
整体看比较麻烦,拆解开就没那么难了
相似回答