我存储阵列看起来像:多个条件来生成一个映射函数中的字符串
let arr = [
{
name: "James",
age: 24
},
name: "Patrick",
age: 20
},
{
name: "John",
age: 23
}
];
我试图得到一个字符串,将是这样的:
Hi James, Patrick and John
^ ^
| |
Comma And
添加,
(逗号)在每个名字之后,但不在最后一个之后。以及在最后一个词之前的And
这个词。我使用的地图:
arr.map((l,i) =>
<span key={i}>
{i < arr.length - 1 ? `${l.name}, ` :
i === arr.length - 1 ? `and ${l.name}.` : ''}
</span>)
我得到:
James, Patrick, and John
^
|
This is Extra
有一个美丽而简单的方法来获得这样的结果呢?和一个函数将是纯粹的,并在数组中的所有数量的名字工作?最好用ES6 ..谢谢!
你为什么要舍弃牛津的逗号? ;( – qxz