O que significa "=>" em JavaScript? [duplicado]

Esta pergunta já tem uma resposta aqui:

Quando devo usar as funções de seta no ECMAScript 6? 7 respostas

Aqui está o código:

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

Eu gostaria de saber o que é "=>". Essa função pega uma string e, para o número de índice de cada elemento, adiciona muitos elementos à saída. Aqui está um exemplo:

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

questionAnswers(1)

yourAnswerToTheQuestion