Learning JavaScript Data Structures and Algorithms
上QQ阅读APP看书,第一时间看更新

Arrow functions

Arrow functions are a great way of simplifying the syntax of functions in ES2015. Consider the following example:

var circleAreaES5 = function circleArea(r) { 
  var PI = 3.14; 
  var area = PI * r * r; 
  return area; 
}; 
console.log(circleAreaES5(2)); 

We can simplify the syntax of the preceding code to the following code:

const circleArea = r => { // {1} 
  const PI = 3.14; 
  const area = PI * r * r; 
  return area; 
}; 
console.log(circleArea(2)); 

The main difference is in line {1} of the example, on which we can omit the keyword function using =>.

If the function has a single statement, we can use a simpler version, by omitting the keyword return and the curly brackets as demonstrated in the following code snippet:

const circleArea2 = r => 3.14 * r * r; 
console.log(circleArea2(2)); 

If the function does not receive any argument, we use empty parentheses, which we would usually use in ES5:

const hello = () => console.log('hello!'); 
hello(); 
The preceding examples can be executed at  https://goo.gl/nM414v.