将Javascript数组转换为可读字符串

6
如果您有一个JavaScript / JQuery字符串数组:
var myStrings = ["item1", "item2", "item3", "item4"];

你找到的最优雅的方法是什么,将该列表转换为以下形式的可读英语短语:

"item1, item2, item3和item4"

该函数还必须适用于:

var myStrings = ["item1"]; // produces "item1"
var myStrings = ["item1", "item2"]; // produces "item1 and item2"
1个回答

14

就像这样:

a.length == 1 ? a[0] : [ a.slice(0, a.length - 1).join(", "), a[a.length - 1] ].join(" and ")

一行代码搞定!我很惊讶!感谢你的出色回答。 - Mark Robinson
5
你可以通过使用slice对负索引的支持来稍微缩短它:a.length == 1 ? a[0] : [ a.slice(0, -1).join(", "), a[a.length - 1] ].join(" and ") - Tim Down

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接