# Getting elements of an array depending on corresponding values of another JavaScript

JavascriptWeb DevelopmentObject Oriented Programming

#### JavaScript for beginners

Best Seller

74 Lectures 10 hours

#### Modern Javascript for Beginners + Javascript Projects

Most Popular

112 Lectures 15 hours

#### The Complete Full-Stack JavaScript Course!

Best Seller

96 Lectures 24 hours

Suppose we have two arrays, for an example consider the following two −

const array1 = ['a','b','c','d','e','f','g','h'];
const array2 = [ 1, 0, 0, 1 , 0, 0, 1, 0];

Both the arrays are bound to have the same length. We are required to write a function that when provided with an element from the second array, returns a subarray from the first array of the all elements whose index corresponds to the index of the element we took as an argument in the second array.

For example: findSubArray(0) should return −

[‘b’, ‘c’, ‘e’, ‘f’, ‘h’]

Because these are the elements present in the first array on indices 1, 2, 4, 5, 7, at which in the second array 0’s is present.

Therefore, now let’s write the code for this function −

## Example

const array1 = ['a','b','c','d','e','f','g','h'];
const array2 = [ 1, 0, 0, 1 , 0, 0, 1, 0];
const findSubArray = (first, second, el) => {
if(first.length !== second.length){
return false;
};
return second.reduce((acc, val, ind) => {
if(val === el){
acc.push(first[ind]);
};
return acc;
}, []);
};
console.log(findSubArray(array1, array2, 0));
console.log(findSubArray(array1, array2, 1));

## Output

The output in the console will be −

[ 'b', 'c', 'e', 'f', 'h' ]
[ 'a', 'd', 'g' ]