Вычтите один день из даты и найдите значения-Js

#javascript

Вопрос:

я работаю над небольшим приложением для выставления счетов, используя electronjs и pouchdb
, я хочу найти начальный баланс на каждый день на основе выбора даты при вводе

если нет данных на конкретную дату, я хочу найти данные по предыдущим датам

я попытался рекурсивным способом, но это не сработало

 // getting date value on change
var  TodayDate = document.getElementById('daybook-firstdate').value;

// onchange function
function getday(TodayDate){
   

    daybook.find({
        selector: {
            
            Date:TodayDate ,
           
        }
    }).then(function(result) {  
        
        var opening_balance = 0
       
        //chenking the data is present in  the selected date 
        if(result.docs.length>0){

            result.docs.forEach((element, ) => {

                saletotal = (isNaN(element.TotalAmount) ? 0: parseInt(element.TotalAmount));
                Totalinvest = (isNaN(element.TotalInvestment) ? 0: parseInt(element.TotalInvestment));
                Totalexp = (isNaN(element.TotalExpenses) ? 0: parseInt(element.TotalExpenses));

                opening_balance =saletotal Totalinvest-Totalexp

            
                console.log(opening_balance)

                
            });
        } 
        // if there is no data on particular date subtracting one  day from  date from date and calling the 
        //get day function with yesterday value as parameter to check if the data is present in previos date
        else{

            let d = new Date(TodayDate);
            d.setDate(d.getDate() - 1);
            var yesterdaydate = d.toISOString().split('T')[0];

            getday(yesterdaydate)

        }
        
           
            

        
    });

 
    

} 
 //selecting the date
<input type="date" name="daybook" id="daybook-firstdate" onchange="getday()" >  

я хочу выполнить поиск до тех пор, пока в предыдущей дате не появятся данные с выбранной даты
. кто-нибудь поможет мне с кодом

объект дневника: //поиск основан на Date объекте введите описание изображения здесь

Комментарии:

1. Вероятно, вам следует включить daybook в свой вопрос пример объекта, чтобы мы могли воспроизвести проблему.

2. добавлен объект дневник для вашей справки

3. onchange запускает асинхронную функцию, но не ожидает ее. Кроме того, вы ничего не возвращаете getday . Попробуйте добавить оператор return до daybook.find и вызов getday в предложение else.

4. при добавлении возвращайтесь до дневника. найдите,как будет выполняться дневник, найдите, можете ли вы помочь мне с кодом