I am running into some confusion while trying to get an array from a function call. I am not sure why am getting undefined back instead of the expected value.
The following logs an array as expected.
findFraudByFromID = (fraudID) => {
  this.KYCinstance.getPastEvents('ReportedFraud',{
  filter: {fromID: fraudID},
  fromBlock: 0
  }, (error, events) => {
    var frauds = [];
    for (var i = 0; i < events.length; i++) {
      frauds.push(events[i].returnValues.fraudID); 
    }
    console.log(frauds);
  })
} 
trackFraud = (fraudID) => {
  findFraudByFromID.call(this, 1);
}
The following logs undefined
findFraudByFromID = (fraudID) => {
  this.KYCinstance.getPastEvents('ReportedFraud',{
  filter: {fromID: fraudID},
  fromBlock: 0
  }, (error, events) => {
    var frauds = [];
    for (var i = 0; i < events.length; i++) {
      frauds.push(events[i].returnValues.fraudID); 
    }
    return frauds;
  })
} 
trackFraud = (fraudID) => {
  frauds = findFraudByFromID.call(this, 1);
  console.log(frauds);
}
 
    