diff --git a/guide/english/certifications/javascript-algorithms-and-data-structures/es6/write-higher-order-arrow-functions/index.md b/guide/english/certifications/javascript-algorithms-and-data-structures/es6/write-higher-order-arrow-functions/index.md index 19ed1e2056..daa68e4223 100644 --- a/guide/english/certifications/javascript-algorithms-and-data-structures/es6/write-higher-order-arrow-functions/index.md +++ b/guide/english/certifications/javascript-algorithms-and-data-structures/es6/write-higher-order-arrow-functions/index.md @@ -1,11 +1,9 @@ --- title: Write Higher Order Arrow Functions --- -![](//discourse-user-assets.s3.amazonaws.com/original/2X/3/3c8584a085a0deaea66b3400e6321eeadab552a2.jpg) - ![:triangular_flag_on_post:](https://forum.freecodecamp.com/images/emoji/emoji_one/triangular_flag_on_post.png?v=3 ":triangular_flag_on_post:") Remember to use **`Read-Search-Ask`** if you get stuck. Try to pair program ![:busts_in_silhouette:](https://forum.freecodecamp.com/images/emoji/emoji_one/busts_in_silhouette.png?v=3 ":busts_in_silhouette:") and write your own code ![:pencil:](https://forum.freecodecamp.com/images/emoji/emoji_one/pencil.png?v=3 ":pencil:") -### Problem Explanation: +### Problem explanation: We need to compute and square values from the `realNumberArray` and store them in the variable `squaredIntegers` using the `map()`, `filter()`, and/or `reduce()` functions. @@ -27,13 +25,13 @@ We need to compute and square values from the `realNumberArray` and store them i > _try to solve the problem now_ -## Spoiler Alert! +## Spoiler alert! ![warning sign](//discourse-user-assets.s3.amazonaws.com/original/2X/2/2d6c412a50797771301e7ceabd554cef4edcd74d.gif) **Solution ahead!** -## ![:beginner:](https://forum.freecodecamp.com/images/emoji/emoji_one/beginner.png?v=3 ":beginner:") Basic Code Solution: +## ![:beginner:](https://forum.freecodecamp.com/images/emoji/emoji_one/beginner.png?v=3 ":beginner:") Code solution: ```javascript const squareList = (arr) => { "use strict"; @@ -45,23 +43,29 @@ We need to compute and square values from the `realNumberArray` and store them i const squaredIntegers = squareList(realNumberArray); console.log(squaredIntegers); ``` -![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":rocket:") Run Code - -# Code Explanation: +- [Run code at codepen.io](https://codepen.io/dylantyates/pen/WyWoYJ) +### Code explanation: Uses the operator `filter()` and `map()` functions to square all positive integers in a given array. -#### Relevant Links -* map() -* filter() -* reduce() +## Alternative code solution: +```javascript -## ![:clipboard:](https://forum.freecodecamp.com/images/emoji/emoji_one/clipboard.png?v=3 ":clipboard:") NOTES FOR CONTRIBUTIONS: + // change code below this line + const squaredIntegers = arr.filter((param) => Number.isInteger(param) && param >= 0).map(x => x * x); + // change code above this line -* ![:warning:](https://forum.freecodecamp.com/images/emoji/emoji_one/warning.png?v=3 ":warning:") **DO NOT** add solutions that are similar to any existing solutions. If you think it is **_similar but better_**, then try to merge (or replace) the existing similar solution. -* Add an explanation of your solution. -* Categorize the solution in one of the following categories — **Basic**, **Intermediate** and **Advanced**. ![:traffic_light:](https://forum.freecodecamp.com/images/emoji/emoji_one/traffic_light.png?v=3 ":traffic_light:") -* Please add your username only if you have added any **relevant main contents**. (![:warning:](https://forum.freecodecamp.com/images/emoji/emoji_one/warning.png?v=3 ":warning:") **_DO NOT_** _remove any existing usernames_) +``` +- [Run code at repl.it](https://repl.it/@AdrianSkar/ES6-Write-higher-order-arrow-functions) +### Code explanation +This does basically the same but uses the `isInteger()` method to check the numbers. -> See ![:point_right:](https://forum.freecodecamp.com/images/emoji/emoji_one/point_right.png?v=3 ":point_right:") **`Wiki Challenge Solution Template`** for reference. + +### Resources + +- ["Array.prototype.map()" - *MDN JavaScript reference*](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/map) +- ["Array.prototype.filter()" - *MDN JavaScript reference*](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/filter) +- ["Array.prototype.reduce()" - *MDN JavaScript reference*](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/Reduce) +- ["Number.isInteger()" - *MDN JavaScript reference*](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/isInteger) +- ["Math.pow()" - *MDN JavaScript reference*](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Math/pow)