findOne(query) {
    for (let i = 0, l = this.data.length; i < l; i += 1) {
      const row = this.data[i];
      if (this.match(row, query)) {
        return { ...row };
      }
    }
    return undefined;
  }
Givena query, find the first row that match the query.
@param {Object} query Query for the match.
@returns {Object} First row that match the query, cloned.