2012-10-09 52 views
0

我有一個可在我的ejs模板中訪問的用戶名數組。使用快遞在ejs中創建逗號單獨鏈接列表

我要創建的鏈接這樣的逗號分隔的列表:

<a href="/user1">user1</a>, <a href="/user2">user2</a> and <a href="/user3">user3</a> 

呈現的HTML看起來像這樣(與用戶名是鏈接):

user1, user2 and user3 have added items to your list. 

我可以遍歷並把它們全部放在他們自己的路線上,但我怎麼會用逗號(最後一個有「和」)加上輸出呢?

<% usernames.forEach(function(username){ %> 
    <a href="/<%= username %>"><%= username %></a> 
<% }) %> 

有沒有辦法用逗號加入這個輸出,並且爲最後一個加上'和'沒有逗號?

回答

2

這是我想出了:

<% creators.forEach(function(username, i, arr){ %> 
    <a href="/<%= username %>"><%= username %></a><%= (arr.length > 0 && i < arr.length-1 ? (i == arr.length-2 ? ' and ' : ', ') : '') %>   
<% }) %> 
<%= creators.length > 1 ? 'have' : 'has' %> created lists or items for <%= owne 
r.username %>.</p>