freeCodeCamp/guide/russian/javascript/es6/arrow-functions/index.md

2.1 KiB
Raw Blame History

title localeTitle
Arrow Functions Функции стрелки

Функции стрелок

Функции в ES6 немного изменились. Я имею в виду синтаксис.

// Old Syntax 
 function oldOne() { 
 console.log("Hello World..!"); 
 } 
 
 // New Syntax 
 var newOne = () => { 
 console.log("Hello World..!"); 
 } 

Новый синтаксис может немного запутать. Но я попытаюсь объяснить синтаксис. Есть две части синтаксиса.

  1. var newOne = ()
  2. => {}

Первая часть просто объявляет переменную и присваивает ей функцию (т.е.) (). Он просто говорит, что переменная на самом деле является функцией.

Затем вторая часть объявляет часть тела функции. Часть стрелки с фигурными скобками определяет часть тела.

Другой пример с параметрами:

let NewOneWithParameters = (a, b) => { 
 console.log(a+b); // 30 
 } 
 NewOneWithParameters(10, 20); 

Скобки необязательны, если есть только одно имя параметра:

let newOneWithOneParam = a => { 
 console.log(a); 
 } 

Невероятным преимуществом функции стрелок является то, что вы не можете восстановить функцию стрелки. Он всегда будет вызываться с контекстом, в котором он был определен. Просто используйте обычную функцию.

// Old Syntax 
 axios.get(url).then(function(response) { 
  this.data = response.data; 
 }).bind(this); 
 
 // New Syntax 
 axios.get(url).then(response => { 
  this.data = response.data; 
 }); 

Я не думаю, что мне нужно объяснить это. Это просто.