I have checked many questions and answers regarding join array with comma separated string, But my problem is that, I am making the string readable for human i.e I have tag
You can use .slice()
:
> var a = [1, 2, 3, 4, 5];
> [a.slice(0, -1).join(', '), a.slice(-1)[0]].join(a.length < 2 ? '' : ' and ');
'1, 2, 3, 4 and 5'
a.slice(0, -1).join(', ')
: takes all but the last element and joins them together with a comma.a.slice(-1)[0]
: it's the last element..join(a.length < 2 ? '' : ' and ')
: joins that string and the last element with and
if there are at least two elements.