有一个标签列表(数组)['tag1', 'tag2', 'tag3']我想生成一个很好的标题,如:Content tagged tag1, tag2 and tag3.
目前我有:
"Content tagged " + tags_titles.join(" and ");
Run Code Online (Sandbox Code Playgroud)
结果:
Content tagged tag1 and tag2 and tag3
我知道这是一个简单的问题,但我很好奇是否有一个很好的解决方案.
您可以获取最后两个元素并将它们连接起来' and '并将其作为最后一个元素放回到数组中,然后将所有元素连接起来', '以获得一个好的字符串.
方法
Array#concat,连接两个数组并返回一个新数组
Array#splice,获得阵列的最后两个元素
Array#join,使用给定的spacer连接数组.
此提议适用于任何长度的数组,即使有一个或两个元素.
function nice(array) {
return array.concat(array.splice(-2, 2).join(' and ')).join(', ');
}
console.log("Content tagged " + nice(['tag1']));
console.log("Content tagged " + nice(['tag1', 'tag2']));
console.log("Content tagged " + nice(['tag1', 'tag2', 'tag3']));Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
158 次 |
| 最近记录: |