Ich habe dies gelöst, aber ich bin auf der Suche nach einem besseren Weg, dies zu tun. Fiddle - https://jsfiddle.net/143h9wrq/ Also was ich tue ist zu überprüfen, ob es 2+ Ids gibt, dann die Zeichenfolge in ein Array, nehmen Sie das letzte Array-Element und fügen Sie 'und', fügen Sie es wieder zusammen und zeigen Sie es an.Hinzufügen eines "und" zum letzten Wort in String - js/Angular
Ich bin auf der Suche, ob es einen besseren Weg gibt zu kondensieren, wenn. Ich verwende Angular im Projekt, nicht im Beispiel. Basic listArr wäre $ scope.listArr und issues ist $ user.issues.
JS:
var issuesId =[1,2,3,4]
var issues = "issue one, issue two, issue three, issue four";
if (issuesId.length >= 2) {
var str = issues.split(', ');
var addAnd = str.pop();
addAnd = 'and ' + addAnd;
str.push(addAnd);
var listArr = str.join(', ');
document.getElementById('text').innerHTML = listArr;
}
else {
var listArr = issues;
document.getElementById('text').innerHTML = listArr;
}
HTML:
<p>{{listArr}}</p>
Ich denke, Ihr Ansatz ist mehr als gültig – cor
Die einzige Problem, das ich mit Ihrem Ansatz sehe, ist, dass Sie mit einem Satz enden, der nicht korrekt ist, da es ein ',' vor 'und' einfügt, wenn keiner gebraucht wird. – GillesC
Diese Frage ist mit 'angularjs' getaggt - und dieser Ansatz ist nichts wie ein angularjs Ansatz –