обозначение жирной стрелки и регулярная функция - PullRequest
0 голосов
/ 29 августа 2018

Обычная функция:

function square(number) {
  return number.map(function (x) {
    return Math.pow(x, 2);
  });
}

Жирная стрела:

let square = (number) => {
  return number.map(function(x) {
    return Math.pow(x, 2);
  });
}

Правильна ли жирная стрелка? или я что-то упустил?

Ответы [ 2 ]

0 голосов
/ 20 сентября 2018

Ваш пример верный.

let square = (number) => {
  return number.map(function(x) {
    return Math.pow(x, 2);
  });
}

Вы также можете опустить скобки, если есть только 1 параметр.

let square = number => {
  return number.map(function(x) {
    return Math.pow(x, 2);
  });
}

Почему не лямбда в лямбде?

let square = number => {
  return number.map( x => {
    return Math.pow(x, 2);
  });
}

Вы также можете удалить фигурные скобки и использовать возврат по умолчанию, если это одно выражение.

let square = number => number.map(x => Math.pow(x, 2));

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

let power2 = x => Math.pow(x,2)
let square = number => number.map(power2);

Рабочий фрагмент.

let power2 = x => Math.pow(x,2)
let square = number => number.map(power2);
console.log(square([4,5,6]))
0 голосов
/ 20 сентября 2018

Да, это правильно. Вы можете проверить это самостоятельно в любом интерпретаторе, в том числе здесь, в Переполнении стека:

let square = (number) => {
  return number.map(function(x) {
    return Math.pow(x, 2);
  });
}

result.value = square([1,2,3,4]);
<output id="result"></output>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...