Pregunta de entrevista de Petlove

Qual a diferença do forEach() e do map() em JavaScript?