자바스크립트
두 개의 데이터([{데이터}*20])를 통해 한 개의 데이터로 합치는 방법
YG - 96년생 , 강아지 있음, 개발자 희망
2021. 12. 12. 07:29
문제점
페이지 1과 페이지 2의 데이터를 합치려고 하였으나 ...Spread Operator (전개연산자) 를 사용하였을 때 20개의 값밖에 나오지 않았다. 이유는 오브젝트 안에 오브젝트를 전개하려고 하여서인지 정확히는 잘 모르겠다.
const newPages123 = [{ ...page1.data?.results, ...page2.data?.results }];
해결 방법
const newPages: IMovie[] = [];
console.log(newPages);
page1.data?.results.map((item) => newPages.push(item));
page2.data?.results.map((item) => newPages.push(item));
20개의 배열안에 20개의 오브젝트가 들어있다는 것을 생각하고 1개의 새로운 배열을 만든 후 두개의 배열안에 들어있는 오브젝트를 map 을 사용하여 오브젝트를 item으로 가정하고 새로운 array에 push해주었습니다.