Optimizing a nested for loop over JS array of objects
You can use some built in functions instead of the for loops.

var result = A2.filter(e =&gt; A1.includes(e.value));


I can't say if this is much faster, since those functions still loop through the arrays. You'll have to time this with some large input to test.

Be aware that Internet Explorer doesn't support .includes or arrow functions. IE friendly version:

var result = A2.filter(function(e) {return A1.indexOf(e.value) !== -1});