루이의 개발 블로그

구조 분해 할당으로 속성을 가져오는 방법 본문

웹개발

구조 분해 할당으로 속성을 가져오는 방법

루이96 2024. 10. 31. 22:43
    ({ incar }) =>
      (workDir) => {
        // 필터링된 파일 리스트를 가져오는 함수 정의
        const copyFiles = Object.values(incar.inputs)
          .filter((input) => input.file?.value?.length > 0)

해당 로직을 보면 incar로 불러온 다음 incar.inputs를 사용하는것을 볼 수 있다. 나는 이렇게 사용해야만 하는 줄 알았다. 문득 그 안에있는 자식을 바로 구조분해할당으로 바로 얻을수는 없을까? 하고 알아본 결과 다음과 같은 방법으로 가능하다는 것을 알게 되었다.

{incar:{inputs}} 그냥 오브젝트 구조를 그리고 어떤 속성을 가져올지 적으면 되는것이였다.

({ incar: { inputs } }) => 
  (workDir) => {
    // 필터링된 파일 리스트를 가져오는 함수 정의
    const copyFiles = Object.values(inputs)
      .filter((input) => input.file?.value?.length > 0)
      .map((input) => input.file);

    // 파라미터 객체 생성 및 반환
    return {
      fileList: copyFiles,
      path: workDir,
    };
  }

이처럼 바로 구조분해할당으로 얻을 수 있음을 인지하고 넘어가라