Rest Parameters in ES6 | SoloLearn: Learn to code for FREE!

+1

Rest Parameters in ES6

what does these following lines mean? function containsAll(arr) { for (let k = 1; k < arguments.length; k++) { let num = arguments[k]; if (arr.indexOf(num) === -1) { return false; } } return true; } let x = [2, 4, 6, 7]; console.log(containsAll(x, 2, 4, 7)); console.log(containsAll(x, 6, 4, 9)); please can anyone explain me this code?

4/2/2020 10:29:43 AM

Muhammad Awwab Khan

1 Answer

New Answer

+4

`arguments` is like an array and it contains all arguments passed to your function. For example if you have something(x, 2, 4, 7); then arguments[0] == x arguments[1] == 2 arguments[2] == 4 arguments[3] == 7 However, this is not nice ES6 code. In ES6 we should to do this instead: function containsAll(arr, ...rest) { for(let num of rest) { if(arr.indexOf(num) === -1) return false; } return true; }