오늘의 목표
알고리즘 문제풀기
Cs공부하기
팀프로젝트 진행
어려운것
Argument of type error
이런오류를 마주쳤는데 처음에는 배열이 아닐때 코드가 실행이 되지않게 조건식을 추가해서
``
export const formatPlanDates = (
plan: PlanType[],
): { startDate: string; endDate: string } => {
const dates = plan.dates;
if (!Array.isArray(dates)) {
throw new Error("배열이아님");
}
const startDate = formatMonthDay(dates[0]);
const endDate = formatMonthDay(dates[dates.length - 1]);
return { startDate, endDate };
};
``
해결을 할려고 했으나 해결이 되지않고 검색을 해보았는데 이오류는
typescript가 예상하고 있는 특정한 type이 아닌, 다른 type을 넘겨줬을 때 발생하게 되는 오류였다 근데
``
export const formatPlanDates = (
plans: PlanType,
): { startDate: string; endDate: string } => {
const startDate = formatMonthDay(plan.dates[0]);
const endDate = formatMonthDay(plan.dates[plan.dates.length - 1]);
return { startDate, endDate };
};
``
-> 이렇게 formatPlanDates를 보내고
``
const { startDate, endDate } = formatPlanDates(plan);
``
구조 분해할당을 해서 startDate와 endDate변수를 뽑아내서 사용을하여 오류를 해결했는데
가지고오는 매개변수가 1개이기 때문에 굳이 배열로 만들어서 할필요가 없이 객체그대로 사용을 하면 해결되는 오류였다.
느낀점