인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

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

알려준닭님의 프로필 이미지
알려준닭

작성한 질문수

한 입 크기로 잘라 먹는 리액트(React.js) : 기초부터 실전까지

8.5) Read - 투두리스트 렌더링하기

8.5) Read -투두리스트 렌더링하기 강의 내용 중 질문드립니다!

해결된 질문

작성

·

37

·

수정됨

0

import "./List.css";
{import Todoitem from "./Todoitem";

const List = ({ todos }) => {
  return (
    <div className="List">
      <h4>Todo List🎉</h4>
      <input placeholder="검색어를 입력하세요"></input>
      <div className="todos_wrapper">
        {todos.map((todo) => {
          return <div>todo</div>;
        })}
      </div>
    </div>
  );
};

export default List;

 

 

<질문>

 {todos.map((todo) => {
          return <div>todo</div>;
        })}

 

{todos.map((todo) =>{ ....})}

 

빨간줄 친 todo는 어디서 나온건지 이해가 되지 않습니다

 

8.5) Read -투두리스트 렌더링하기 강의

1분 46초 입니다!

답변 2

0

이정환 Winterlood님의 프로필 이미지
이정환 Winterlood
지식공유자

안녕하세요 이정환입니다.

이 todo는 어디선가 별도로 선언된 변수가 아니라 이 map 메서드의 콜백 함수에 전달되는 매개변수입니다.

자바스크립트의 배열 메서드인 map은 배열 안에 들어있는 각 요소를 하나씩 꺼내서 콜백 함수에 전달해주고, 그 콜백 함수의 리턴값들을 모아서 새로운 배열을 만들어주는 그런 메서드인데요 따라서 여기서의 todos.map((todo)=>...)) 에서의 todo는 todos 배열의 하나의 요소를 의미합니다.

map은 정말 자주 쓰이는 자바스크립트의 핵심 메서드 중 하나이기 때문에, 혹시라도 사용 방법이 아직 익숙하지 않으시다면! 우리 강의의 2.9 배열 메서드 - 3. 배열 변형 챕터를 다시 복습해보시는 걸 추천드립니다. 약 3분경에 다루고 있습니다.

알려준닭님의 프로필 이미지
알려준닭
질문자

답변감사합니다! 다시 복습하면서 개념들을 익혀보겠습니다!

0

알려준닭님의 프로필 이미지
알려준닭
질문자

Editor.jsx, App.jsx 를 찾아봤는데 따로 const 를 통해 todo라고 한 것이 보이지 않아서 헷갈려요!

알려준닭님의 프로필 이미지
알려준닭

작성한 질문수

질문하기