JSFiddle - React, Tailwind, and code Playground

by hescano

JavaScript

function list(names) {
	names = names.map(function(i){return i.name;});
  if (names.length === 0) return '';
  if (names.length === 1) return names[0];
  if (names.length === 2) return names[names.length - 2] + " & " + names[names.length - 1];
  
	return names.splice(0, names.length - 2).join(", ") + ", " + names[names.length - 2] + " & " + names[names.length - 1];
}

console.log(list([{name: 'Bart'},{name: 'Lisa'},{name: 'Maggie'},{name: 'Homer'},{name: 'Marge'}]));