Como encontrar uma data para um valor?

Eu tenho uma lista de datas e clicando em um deles deve exibir o nome dos costs E para isso, precisa encontrar a data aproximada do valor de costs para a data do relatório selecionada anteriormente. No momento em que para fazer isso eu uso aqui é a condição if (c.date <= this.selectedReport.report_date) {}. Mas isso não é suficiente, pois é exibido para vários valores e, para corrigir isso, o quanto eu entendi é preciso encontrar a data mais adequada (max date) do valor custos para a data do relatório. Como isso pode ser feito?

reports: Reports[] income: Income[] costs: Costs[] selectedReport = null filteredIncome = [] filteredСosts = []  onSelectedReport(reportId) {   this.selectedReport = this.reports.find(     el => {       return el.report_id === reportId     }   )   if (this.incomeService) {     this.incomeService.fetchAll().subscribe(       income => {         this.income = income         this.filteredIncome = this.income.filter(           (income) => income.income_id == this.selectedReport.r_income_id         )         if (this.costsService) {           this.costsService.fetch().subscribe(             costs => {               this.costs = costs               for(let i of this.filteredIncome){                 for(let c of costs){                   if(c.costs_id==i.i_costs_id){                     if (c.date <= this.selectedReport.report_date) {                       this.filteredСosts.push(c)                     }                   }                 }               }             }           )         }       }     )   } } 

html:

<div *ngFor="let report of reports" class="center " (click)="onSelectedReport(report.report_id)">   <a>{{report.report_date | date: 'dd.MM.yyyy'}}</a> </div> <div  *ngIf="selectedReport">   <div *ngFor="let i of filteredIncome">     <div *ngFor="let c of filteredСosts">       {{c.name}}     </div>   </div> </div> 

Espero que esteja claramente escrito aqui, peço desculpa pelo mau português, isto é tudo um tradutor)

Página resultado de pesquisa não carrega resultados! Não consigo encontrar o erro!

Digito o nome no campo de pesquisa e clico em pesquisar a tela fica cortada como na imagem abaixo. Quando atualizo a página o resultado a aparece e some rapidamente. Fiz um gif abaixo mostrando o problema:

inserir a descrição da imagem aqui

Código utilizado no controller (CodeIgniter).

    // Details of searched student function student_details($  param1 = ""){   if ($  this->session->userdata('admin_login') != 1)       redirect(site_url('login'), 'refresh');    $  student_identifier = html_escape($  this->input->post('student_identifier'));   $  query_by_code = $  this->db->get_where('student', array('student_code' => $  student_identifier));    if ($  query_by_code->num_rows() == 0) {     $  this->db->like('name', $  student_identifier);     $  query_by_name = $  this->db->get('student');     if ($  query_by_name->num_rows() == 0) {       $  this->session->set_flashdata('error_message' , get_phrase('no_student_found'));       redirect(site_url('admin/dashboard'), 'refresh');     }     else{       $  page_data['student_information'] = $  query_by_name->result_array();     }   }   else{     $  page_data['student_information'] = $  query_by_code->result_array();   }   $  page_data['page_name']   = 'search_result';     $  page_data['page_title']    = get_phrase('search_result');     $  this->load->view('backend/index', $  page_data); }