JavaScript Return an array that contains all the strings appearing in all the subarrays


We have an array of arrays like this −

const arr = [
   ['foo', 'bar', 'hey', 'oi'],
   ['foo', 'bar', 'hey'],
   ['foo', 'bar', 'anything'],
   ['bar', 'anything']
]

We are required to write a JavaScript function that takes in such array and returns an array that contains all the strings which appears in all the subarrays.

Let's write the code for this function

Example

const arr = [
   ['foo', 'bar', 'hey', 'oi'],
   ['foo', 'bar', 'hey'],
   ['foo', 'bar', 'anything'],
   ['bar', 'anything']
]
const commonArray = arr => {
   return arr.reduce((acc, val, index) => {
      return acc.filter(el => val.indexOf(el) !== -1);
   });
};
console.log(commonArray(arr));

Output

The output in the console will be −

['bar']

Updated on: 31-Aug-2020

219 Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements