--- id: 587d7b88367417b2b2512b45 title: Write Higher Order Arrow Functions challengeType: 1 videoUrl: '' localeTitle: Написание функций стрелок с более высоким порядком --- ## Description
Пришло время увидеть, насколько эффективны функции стрелок при обработке данных. Функции стрелок отлично работают с функциями более высокого порядка, такими как map() , filter() и reduce() , которые принимают другие функции в качестве аргументов для обработки коллекций данных. Прочтите следующий код:
FBPosts.filter (функция (post) {
return post.thumbnail! == null && post.shares> 100 && post.likes> 500;
})
Мы написали это с filter() чтобы сделать его несколько читаемым. Теперь сравните его со следующим кодом, который вместо этого использует синтаксис функции:
FBPosts.filter ((post) => post.thumbnail! == null && post.shares> 100 && post.likes> 500)
Этот код более краткий и выполняет ту же задачу с меньшим количеством строк кода.
## Instructions
Используйте синтаксис функции стрелки, чтобы вычислить квадрат только положительных целых чисел (десятичные числа не являются целыми) в массиве realNumberArray и сохранить новый массив в переменной squaredIntegers .
## Tests
```yml tests: - text: squaredIntegers должен быть постоянной переменной (используя const ). testString: 'getUserInput => assert(getUserInput("index").match(/const\s+squaredIntegers/g), "squaredIntegers should be a constant variable (by using const).");' - text: squaredIntegers должен быть array testString: 'assert(Array.isArray(squaredIntegers), "squaredIntegers should be an array");' - text: 'squaredIntegers должно быть [16, 1764, 36]' testString: 'assert.deepStrictEqual(squaredIntegers, [16, 1764, 36], "squaredIntegers should be [16, 1764, 36]");' - text: ключевое слово function не использовалось. testString: 'getUserInput => assert(!getUserInput("index").match(/function/g), "function keyword was not used.");' - text: петля не должна использоваться testString: 'getUserInput => assert(!getUserInput("index").match(/(for)|(while)/g), "loop should not be used");' - text: 'map , filter или reduce должны использоваться' testString: 'getUserInput => assert(getUserInput("index").match(/map|filter|reduce/g), "map, filter, or reduce should be used");' ```
## Challenge Seed
```js const realNumberArray = [4, 5.6, -9.8, 3.14, 42, 6, 8.34, -2]; const squareList = (arr) => { "use strict"; // change code below this line const squaredIntegers = arr; // change code above this line return squaredIntegers; }; // test your code const squaredIntegers = squareList(realNumberArray); console.log(squaredIntegers); ```
## Solution
```js // solution required ```