freeCodeCamp/curriculum/challenges/english/02-javascript-algorithms-an.../es6/write-arrow-functions-with-...

2.1 KiB

id title challengeType forumTopicId
587d7b88367417b2b2512b44 Write Arrow Functions with Parameters 1 301223

Description

Just like a regular function, you can pass arguments into an arrow function.
// doubles input value and returns it
const doubler = (item) => item * 2;

If an arrow function has a single argument, the parentheses enclosing the argument may be omitted.

// the same function, without the argument parentheses
const doubler = item => item * 2;

It is possible to pass more than one argument into an arrow function.

// multiplies the first input value by the second and returns it
const multiplier = (item, multi) => item * multi;

Instructions

Rewrite the myConcat function which appends contents of arr2 to arr1 so that the function uses arrow function syntax.

Tests

tests:
  - text: User did replace <code>var</code> keyword.
    testString: getUserInput => assert(!getUserInput('index').match(/var/g));
  - text: <code>myConcat</code> should be a constant variable (by using <code>const</code>).
    testString: getUserInput => assert(getUserInput('index').match(/const\s+myConcat/g));
  - text: <code>myConcat</code> should be a function
    testString: assert(typeof myConcat === 'function');
  - text: <code>myConcat()</code> returns the correct <code>array</code>
    testString: assert(() => { const a = myConcat([1], [2]); return a[0] == 1 && a[1] == 2; });
  - text: <code>function</code> keyword was not used.
    testString: getUserInput => assert(!getUserInput('index').match(/function/g));

Challenge Seed

var myConcat = function(arr1, arr2) {
  "use strict";
  return arr1.concat(arr2);
};
// test your code
console.log(myConcat([1, 2], [3, 4, 5]));

Solution

const myConcat = (arr1, arr2) =>  {
  "use strict";
  return arr1.concat(arr2);
};
// test your code
console.log(myConcat([1, 2], [3, 4, 5]));