¿Qué significa "=>" en JavaScript? [duplicar]

Esta pregunta ya tiene una respuesta aquí:

¿Cuándo debo usar las funciones de flecha en ECMAScript 6? 7 respuestas

Aquí está el código:

function accum(s) {
  return s.split('').map((x,index) => x.toUpperCase()+Array(index+1).join(x.toLowerCase())).join('-');
}

Me gustaría saber qué es "=>". Esta función toma una cadena y para el número de índice de cada elemento agrega muchos elementos a la salida. Aquí hay un ejemplo:

accum("abcd") --> "A-Bb-Ccc-Dddd"
accum("RqaEzty") --> "R-Qq-Aaa-Eeee-Zzzzz-Tttttt-Yyyyyyy"
accum("cwAt") --> "C-Ww-Aaa-Tttt"

Respuestas a la pregunta(1)

Su respuesta a la pregunta