我不明白这种行为:
var string = 'a,b,c,d,e:10.';
var array = string.split ('.');
我希望这样:
console.log (array); // ['a,b,c,d,e:10']
console.log (array.length); // 1
但我明白了:
console.log (array); // ['a,b,c,d,e:10', '']
console.log (array.length); // 2
为什么返回两个元素而不是一个? split
是如何工作的?
还有其他方法吗?
最佳答案
您可以添加一个过滤器来排除空字符串。
var string = 'a,b,c,d,e:10.';
var array = string.split ('.').filter(function(el) {return el.length != 0});
关于javascript - String split 返回一个元素比预期多的数组(空元素),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12836062/