인프런 커뮤니티 질문&답변

냐냐냐님의 프로필 이미지
냐냐냐

작성한 질문수

자바스크립트로 알아보는 함수형 프로그래밍 (ES5)

효율 높이기

코딩 결과가 다르게 나와요

작성

·

262

0

var user = users3[0];
_.go(user,
    _.deep_pluck('posts.comments'), 
   console.log); 

의 결과가

(4) [{…}, {…}, {…}, {…}]  

이 아니라

(2) [Array(3), Array(1)]

나오는데 이거 어디가 잘못 된거에요?

답변 2

0

저도 console.log(_.deep_pluck(user, 'posts.comments'));

이 코드만 [Array(3), Array(1)] 이런식으로 나오네요.. 흠.. debug 걸면서 코드 봐도 왜 이렇게 나오는지 정확히 몰르겠네요 ㅠㅠ

0

유인동님의 프로필 이미지
유인동
지식공유자

_.flatten 함수를 실행하시지 않으셔서 그런걸로 보입니다.

아래 예제링크를 참고해주세요.

https://github.com/indongyoo/functional-javascript/blob/master/%EC%9D%B8%ED%94%84%EB%9F%B0-%EB%8F%99%EC%98%81%EC%83%81-%EA%B0%95%EC%9D%98-%EC%98%88%EC%A0%9C/5.%20%EC%8B%A4%EC%A0%84%EC%BD%94%EB%93%9C%EC%A1%B0%EA%B0%81-1.html

console.log(_.flatten(_.deep_pluck(user , 'posts.comments')));
 

예제링크 복사해서 넣어도 (2) [Array(3), Array(1)]로 출력이되는데

 _.deep_pluck를 _.flatten으로 감싸서 실행하는게 맞나요?

감싸서 실행하니깐 (4) [{…}, {…}, {…}, {…}] 정상적으로 출력은 되었습니다

냐냐냐님의 프로필 이미지
냐냐냐

작성한 질문수

질문하기