• 카테고리

    질문 & 답변
  • 세부 분야

    풀스택

  • 해결 여부

    미해결

[].forEach.call 질문드립니다.

20.05.24 13:27 작성 조회수 882

0

[].forEach.call(e.target.files, (f) => {
        imageFormData.append('image', f);     // AJAX를 위해서 FormData객체에 일일히 담아준다. (SPA 유지하기 위해)
                                              // append할때 정해준 'image'라는 변수는 서버에서도 쓰이게된다.
      });

오늘 처음 [].forEach.call 이라는 구문을 접하게 됐습니다.

제로초님 블로그 글을 찾아보니 유사배열에 대해 설명되어있는 글이 있어서 보고 공부해보았습니다.

글을 읽고 판단해본 결과 제 생각이 맞는지 알고싶어서 질문드립니다.

질문1) e.target.files가 '유사배열' 인듯 싶고..  유사배열의 원소들을 가져오기 위해서는

[].forEach.call(유사배열, (원소) => { ... } ) 이런식으로 가져오는게 맞는거죠 ? 

질문2) 

[].forEach.call 말고, Array.prototype.forEach.call로 가져와도 되는건가요 ? 안된다면 어떤이유 때문일까요 ? 

답변 2

·

답변을 작성해보세요.

1

1. 네 맞습니다.

2. 가능합니다. 저는 글자 수가 짧아서 전자를 사용함니다.

0

김민수님의 프로필

김민수

2022.01.15

Array.prototype에서 제공하는 다른 함수들 (map, filter 등등) 도 같이 사용기능합니다.

예를들어

[].map.call([NodeList], e=>""+e); 
이런 식으로도 가능합니다.