• 로그인
  • 장바구니에 상품이 없습니다.

home2 게시판 JavaScript, TS 게시판 가격순정렬중 배열 리턴하기

가격순정렬중 배열 리턴하기

4 글 보임 - 1 에서 4 까지 (총 4 중에서)
  • 글쓴이
  • #59872

    김진선
    참가자
    가격순 정렬을 하는중 두개의 json파일을 하나로 합쳐서 데이타파일을 하나만들어 사용해야 겠다는생각에
    mergeFetch라는 함수를 만들었습니다.
    
    function mergeFetch(fetch1, fetch2) {
      const fetchReq1 = fetch(fetch1).then((res) => res.json());
      const fetchReq2 = fetch(fetch2).then((res) => res.json());
      const allData = Promise.all([fetchReq1, fetchReq2]);
      let allDataArray = [];
      allData.then((res) => {
        res.forEach((item) => {
          allDataArray.push(...item);
        });
        return allDataArray;
      });
      console.log(allDataArray);
    }
    
    const data = mergeFetch(
          'https://codingapple1.github.io/js/more1.json',
          'https://codingapple1.github.io/js/more2.json'
        );
        console.log(data);
    
    그런데 console.log(allDataArray)하면 allDataArray 배열에  push한 값이 들어지 않고 []빈객체럼 나옵니다. 분명 값이 있는거 같은데.. 
     
    data에 함수값을 할당해 보면 undefined라고 나옵니다. 이걸 어떻게 해야 mergeFetch()에서 리턴된 배열을 가져올수 있을까요?
    #59904

    codingapple
    키 마스터
    console.log 저기다 쓰면 then보다 console.log가 먼저 실행됩니다
    then 안으로 옮깁시다
    #59991

    김진선
    참가자
    선생님, 그러면 함수 mergeFetch()에서 리턴된 값 allDataArray을 다른 함수에서 불러오려면 어떻게 해야 할까요?
    #60004

    codingapple
    키 마스터
    allData 같은걸 return 하고
    함수사용시 뒤에 .then을 붙이거나 해봅시다
4 글 보임 - 1 에서 4 까지 (총 4 중에서)
  • 답변은 로그인 후 가능합니다.

About

현재 월 700명 신규수강중입니다.

  (09:00~20:00) 빠른 상담은 카톡 플러스친구 코딩애플 (링크)
  admin@codingapple.com
  이용약관, 개인정보처리방침
ⓒ Codingapple, 강의 예제, 영상 복제 금지
top

© Codingapple, All rights reserved. 슈퍼로켓 에듀케이션 / 서울특별시 강동구 고덕로 19길 30 / 사업자등록번호 : 212-26-14752 온라인 교육학원업 / 통신판매업신고번호 : 제 2017-서울강동-0002 호 / 개인정보관리자 : 박종흠