js函数split(),用空格作为分隔符时,使用正则表达式,会存在浏览器兼容问题。
请看下面代码:
<script type="text/javascript">
var strTest = " a b c ";
var splitArr1 = strTest.split(/\s/); //或var splitArr1 = strTest.split(/\s+/);存在浏览器兼容问题
var splitArr2 = strTest.split(" "); //不存在浏览器兼容问题
alert("splitArr1="+splitArr1.length+";splitArr2="+splitArr2.length);
</script>
也许我们会认为以上代码,splitArr1和splitArr2得到的结果是一样的,不存在浏览器兼容问题。但是,实际上,
将以上代码分别在IE,firefox,google chrome上运行,会发现,splitArr1得到的结果不一样。而splitArr2得到的结果相同。
因此,splitArr1的分割方式,存在浏览器兼容问题。
建议不要这样使用,或者在使用时,先将多余空格去掉,再用。