One option is using reduce() and check if the breed if same with search variable, if it is, use concat() to add to the accumulator.
let arr = [{"name":"Beatrice","breed":"Lurcher","owner":"Tom"},{"name":"Max","breed":"GermanShepherd","owner":"Malcolm"},{"name":"Poppy","breed":"GermanShepherd","owner":"Vikram"}];
let search = 'GermanShepherd';
let result = arr.reduce((c, v) => v.breed === search ? c.concat(v.owner) : c, []);
console.log(result);
You can also use filter and map combo.
let arr = [{"name":"Beatrice","breed":"Lurcher","owner":"Tom"},{"name":"Max","breed":"GermanShepherd","owner":"Malcolm"},{"name":"Poppy","breed":"GermanShepherd","owner":"Vikram"}]
let search = 'GermanShepherd';
let result = arr.filter(o => o.breed === search).map(o => o.owner);
console.log(result);