function pode passar o valor default de um parametro, um outro parametro da função ou outras funções.
arrow function serve para usar dentro de funções para o this referenciar a função pai
arguments = contem todos os parametros da função junto com a função em si arrow functions não tem arguments pois não pode ser referenciada a si mesma
no destruct de argumentos o objeto não é modificado quando a propriedade criada por destruct é mudada