En el siguiente código:
const names = 'Harry Trump ;Fred Barney; Helen Rigby ; ; ; Bill Abel ;Chris Hand ' let re = /\s*(?:;|$)\s*/; console.log(names.split(re)); console.log(names.split(re).filter((e) => {return e})); La segunda instrucción de log filtra las cadenas vacías. ¿Por qué es así, ya que esperaría que un filtro que 'retorna a sí mismo' básicamente no haga nada, pero parece evaluar la veracidad de la expresión?