inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

처음 배우는 리액트 네이티브

축하합니다 !!

컴포넌트 맵핑 하는 부분에서 질문있습니다.

198

seungyun lee

작성한 질문수 5

0

지금까지 강의를 쭉 따라하고 코드를 다시 한번 살펴 보던중 의문이 드는 부분이 있어서 질문드립니다.

저는 List 컴포넌트를 매핑할때  사용자가 추가한, 추가할 목록인tasks 라는 상태변수를 사용하고있습니다.  Object.value 를 통해 객체 내 요소들을 배열로 묶어 매핑을 하는것으로 이해했는데 혹시 애초에 할 일 목록을 배열로 관리하지 않고, 객체로 관리후에  Object.value메서드를 사용하는것은 단지 방법의 차이인가요??

react-native javascript

답변 2

1

seungyun lee

감사합니다 :)

0

김범준

안녕하세요, 

  

네, 맞습니다. 방법의 차이일 뿐, 배열로 관리해도 되고 객체로 관리해도 됩니다. 

  

제가 객체로 작성한 이유는 항목을 빠르게 찾기 위해서 입니다. 
예를 들어 배열로 관리하게되면, 다음과 같이 관리하게됩니다. 

tasks = [ {id: 1, text: 'text 1'}, {id: 2, text: 'text 2'}, {id: 3, text: 'text 3'} ];

이 상황에서 만약 id가 2인 항목을 수정 혹은 삭제한다면, tasks 배열을 처음부터 확인하면서 id가 2인 항목을 찾아야 합니다. 만약 배열에 100개의 항목이 있고, 99번째에 해당 항목이 있다면 불필요한 검사를 98번 하게됩니다. 

객체로 만들고 객체의 키를 id로 해놓으면, 항목의 id로 해당 항목을 쉽게 찾을 수 있다는 장점이 있습니다. 

  

강의에서 객체로 사용한 이유를 설명하기 위해 배열로 했을때의 단점과 객체로 했을때의 장점만 얘기했지만, 무조건 객체가 좋은건 아닙니다. 상황에 맞게 배열과 객체를 적절하게 사용하는것이 중요합니다. 

    

감사합니다. 

맥북 m4에서 nvm으로 설치불가

0

102

2

expo 사용하지 않고 앱 실행 시, 데이터 불러오기

0

332

1

리덕스강의는 없나요?

0

263

1

선생님 도와주세요 ㅠㅠ (로그인, 회원가입, 콘솔 에러)

0

496

1

버젼 업데이트

0

411

1

expo start중 metro bundler가 같이 실행되지 않아요

0

495

1

모바일 expo 실행오류

0

846

1

안드로이드에서 expo실행이 안되요

0

833

2

터미널 다운 및 사용방법

0

290

1

expo init 에러

0

730

2

안녕하세요. 스택네비게이션 문제 질문드립니다 ㅜ

0

316

1

배포중 에러 해결이 안되네요.. ㅜㅜ

1

3215

1

안녕하세요! 강의 Chat App - Part 1 회원가입 부분에서 firebase 관련 에러가 납니다.

0

687

1

styled-components 에러

0

395

1

OS 네이트브 코드를 개발하면서 UI 를 리액트 네이티브로

0

480

1

저장하면 바뀐값들 보여야하는데 재렌더링이 안일어납니다..

0

492

1

안드로이드스튜디오 EXPO 어플 튕깁니다 ㅠㅠ

0

274

1

styled component를 사용하면 터집니다 ㅠㅠ

0

408

1

attrs, 속성, props 가 혼란스럽습니다.

0

345

1

안녕하세요, 강의 잘 들었습니다 :) RN과 파이어베이스 관련해서 질문드릴게 있습니다!

0

575

1

자꾸 The request timed out 에러가 뜹니다 .

0

1900

1

코드 좀 봐주세요 버튼 두개가 생성이 안되요

0

277

1

expo 실행시 스타일 속성 바로 보려면 어디서 보나요?

0

423

1

자바스크립트 () => 의미는요???

0

438

2