O ES6 pode usar "Arrow" (=>) para definir funções. Observe que eles são funções e não usam esse método para definir classes (construtores).
1. Sintaxe
1. Uma função simples com um parâmetro
var single = a => aslem ('Olá, mundo') // 'Olá, mundo'2. Se não houver parâmetros, você precisará usar colchetes antes da seta.
var log = () => {alert ('no param')}3. Vários parâmetros requerem colchetes e intervalos de vírgula entre parâmetros, como adicionar dois números
var add = (a, b) => a + badd (3, 8) // 11
4. São necessários aparelhos encaracolados para várias declarações no corpo da função
var add = (a, b) => {if (typeof a == 'número' && typeof b == 'número') {return a + b} else {return 0}}5. Ao devolver o objeto, você precisa embrulhá -lo entre colchetes, porque os aparelhos são ocupados e interpretados como blocos de código.
var gethash = arr => {// ... return ({name: 'jack', idade: 33})}6. diretamente como manipulador de eventos
document.addeventListener ('click', ev => {console.log (ev)})7. Classifique o retorno de chamada como matriz
var arr = [1, 9, 2, 4, 3, 8] .sort ((a, b) => {if (a - b> 0) {return 1} else {return -1}}) arr // [1, 2, 3, 4, 8, 9]2. Preste atenção
1. O operador do tipo de é o mesmo que a função comum
var func = a => acensole.log (tipoof func); // "função"
2. A instância de também retorna true, indicando que também é uma instância de função
console.log (functionof FUNCOF); // verdadeiro
3. Isso é fixo, não mais mutável
obj = {data: ['John backus', 'John Hopcroft'], init: function () {document.onClick = eV => {alert (this.data) // ['John backus', 'John hopcroft']} // não-anarrow function // document.onClick = function () {// alert (this.d.Da.DAT. Isso é muito útil, não mais preciso me escrever, self , _this ou bind .
4. A função de seta não pode ser usada com novo
var pessoa = (nome, idade) => {this.name = nome this.age = idade} var p = novo func ('John', 33) // erro5. O argumento não pode ser usado
var func = () => {console.log (argumentos)} func (55) //Para 5, o teste no Firefox36 pode gerar 55 e parece não haver limite.
3. Resumo
O exposto acima é a introdução completa à função de seta no ES6. Espero que seja útil para todos. Se você tiver alguma dúvida, deixe uma mensagem para discutir.