Sul*_*man 23 javascript jquery
我已经用逗号分隔的字符串检查了许多关于连接数组的问题和答案,但我的问题是,我正在使字符串对人类可读,即我有标签数组,如果它们是两个标签,那么它将是tag1 and tag2,如果它们是100标签然后它将是tag1, tag2, ,,,tag99 and tag100最后一个使用and和之前使用逗号作为分隔符.
在JQuery中处理的任何方法?
Ble*_*der 71
你可以使用.slice():
> var a = [1, 2, 3, 4, 5];
> [a.slice(0, -1).join(', '), a.slice(-1)[0]].join(a.length < 2 ? '' : ' and ');
'1, 2, 3, 4 and 5'
a.slice(0, -1).join(', '):获取除最后一个元素以外的所有元素并使用逗号将它们连接在一起.a.slice(-1)[0]:这是最后一个元素..join(a.length < 2 ? '' : ' and '):and如果至少有两个元素,则连接该字符串和最后一个元素.cip*_*her 20
另一个快速解决方案是用和替换最后一个逗号.
以下代码:
var a = [0,1,2,3,4];
a.join(', ').replace(/,(?!.*,)/gmi, ' and');
应该做的伎俩.(另外,根据需要使用正则表达式修饰符).
一个可能的问题可能是你有大阵列的时候,但它应该工作.