React 시간양식(YYYY-mm-DD)

£€€.T.$·2023년 7월 4일
0

일주일치 각각의 날짜에 대한 DB값을 가져와야 했다!

chart.js

//중략....

const currentDate = new Date();
        const oneDay = 24 * 60 * 60 * 1000; 
        const todayBefore= new Date(currentDate.getTime());
        const oneDayBefore= new Date(currentDate.getTime() - oneDay);
        const twoDayBefore= new Date(currentDate.getTime() - oneDay * 2);
        const threeDayBefore= new Date(currentDate.getTime() - oneDay * 3);
        const fourDayBefore= new Date(currentDate.getTime() - oneDay * 4);
        const fiveDayBefore= new Date(currentDate.getTime() - oneDay * 5);
        const sixDayBefore = new Date(currentDate.getTime() - oneDay * 6);
         
        function formatDate(date) {
            const year = date.getFullYear();
            const month = String(date.getMonth() + 1).padStart(2, '0');
            const day = String(date.getDate()).padStart(2, '0');
            return `${year}-${month}-${day}`;
        }

        //각 날짜 별 전달받기.
        const today = await AxiosFinal.onLoadOrderDate(formatDate(todayBefore));
        setTodayBefore(today.data);
        const onday = await AxiosFinal.onLoadOrderDate(formatDate(oneDayBefore));
        setOnedayBefore (onday.data);
        const twoday = await AxiosFinal.onLoadOrderDate(formatDate(twoDayBefore));
        setTwodayBefore (twoday.data);
        const threeday = await AxiosFinal.onLoadOrderDate(formatDate(threeDayBefore));
        setThreedayBefore (threeday.data);
        const fourday = await AxiosFinal.onLoadOrderDate(formatDate(fourDayBefore));
        setFourdayBefore (fourday.data);
        const fiveday = await AxiosFinal.onLoadOrderDate(formatDate(fiveDayBefore));        
        setFivedayBefore (fiveday.data);
        const sixday = await AxiosFinal.onLoadOrderDate(formatDate(sixDayBefore));
        setSixdayBefore(sixday.data);  
    }
    
    //중략....

1일을 밀리초로 구한 후 각각의 값을 getTime을 통해서 빼주면 된다!
그 후 formate function을 통해서 날짜의 포멧을 변경하여 제출해준다.


getTime() 메서드

Date 객체의 getTime() 메서드는 1970년 1월 1일 00시 00분 00초 UTC를 기준으로 경과 한 밀리초를 반환.
🔔 console.log(today.getTime()); = 1647233149748


function.formateDate()

function formatDate(date) {
       const year = date.getFullYear();
       const month = String(date.getMonth() + 1).padStart(2, '0');
       const day = String(date.getDate()).padStart(2, '0');
       return `${year}-${month}-${day}`;
        }

getMonth() +1 을 해야 현재의 월이 나온다.

padStart(maxLength, fillString); padStart(maxLength, fillString);

문자 전체의 길이와 더불어 남은 공간에 넣을 문자를 설정 할 수 있다.

profile
Be {Nice} Be {Kind}

0개의 댓글