function testStringSplit() {
var colorText = "red,blue,green,yellow";
var splittedText = colorText.split(/[^\,]+/g);
return splittedText.join("-");
}
在《JavaScript高级程序设计(第三版)》的p128中看到这个例子,按照我的理解这个输出可能是:
red-blue-green-yellow,但是实际上输出和作者说的一样,有点迷糊了。
下面这个JavaScript的输出是什么,为什么?
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
6条回答 默认 最新
- qq_19891827 2016-03-23 02:02关注
得到的结果应该是‘-,-,-,-’,
首先 colorText.split(/[^\,]+/g);的意思是按照一个以上的非逗号将变量colorText进行分割,返回一个数据,这一行代码执行后结果应该为:["", ",", ",", ",", ""];
然后 plittedText.join("-");的意思是将一个数组的每一个元素以‘-’为间隔返回一个字符串,结果为‘-,-,-,-’本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报