【发布时间】:2018-10-20 23:01:07
【问题描述】:
在我的程序中给出了一个名称的哈希数组。我想返回一个格式为用逗号分隔的名称列表的字符串,最后两个名称除外,它们应该用&符号分隔。
例如
list([{ name: 'Bart' }, { name: 'Lisa' }, { name: 'Maggie' }]);
// returns 'Bart, Lisa & Maggie'
list([{ name: 'Bart' }, { name: 'Lisa' }]);
// returns 'Bart & Lisa'
list([{ name: 'Bart' }]);
// returns 'Bart'
list([]);
// returns ''
为此,我使用 map 函数映射对象数组的值,并使用 slice 提取数组的最后两个值,然后使用 toString 将其转换为字符串,然后使用 split("&") 添加最后两个元素之间的&符号,但我没有按照预期得到输出。
代码:
function list(names){
let result = names.map(value => value.name);
return result.slice(-2).toString().split('&');
}
list([{name: 'Bart'}, {name: 'Lisa'}, {name: 'Maggie'}]);
【问题讨论】:
-
你想问什么问题?
-
密切相关(甚至可能重复?):stackoverflow.com/questions/15069587/…
标签: javascript arrays string function formatting