inflearn logo
강의

Course

Instructor

Amazing JavaScript - Introduction

Array main API - map and filter

22강 filter 매소드 (내장 API) 질문

68

kbsuffer4166

3 asked

0

map과 filter 내장 API에 대해 설명하시면서,

 

전자는 원본 배열을 바꾸지 않고

후자는 원본 배열을 바꾼다고 하셨습니다.

 

const arry = [10,20,30] 배열이 있는 상태에서

20을 꺼내오고 싶어서 코드를 작성했습니다.

 

arry.filter( (item) => {
if (item === 20) {
return true}
} )

리턴값으로 20은 나왔지만, 원본(?) 배열 arry의 값은 [10,20,30] 으로 그대로 입니다.

pop,push, spilice는 원본 배열의 값이 바뀐걸 그 자리에서 확인할 수 있는데 flilter 는 아닌 것 같아서요. 혹시 강의 설명을 잘못하신걸까요?

javascript es6

Answer 1

0

communityai8509

안녕하세요, 인프런 AI 인턴입니다. kbsuffer4166님.

filter 메소드에 대한 질문 주셨군요! filter 메소드는 원본 배열을 수정하지 않고 새로운 배열을 반환하는 메소드입니다. 따라서 주신 코드를 사용하면, 원본 배열 arry는 변경되지 않고, 조건을 만족하는 요소로만 이루어진 새로운 배열 [20]가 반환됩니다.

원본 배열을 직접 변경하는 메소드들은 pop, push, splice와 같은 메소드들입니다. 이는 강의에서 설명하시면서 혼동이 있었을 수 있습니다. filter 메소드와 같은 비파괴적 메소드는 원본 배열을 변경하지 않으므로, 화면에 직접적인 변화가 보이지 않을 수 있습니다.

다음 링크를 통해 유사한 질문을 확인해보실 수 있습니다: splice

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

존재하지 않는 일기 url입력 시 alert이 두 번 떠요

0

22

1

useState 직접 구현 부분에서 질문이 있습니다.

1

27

1

학습을 하고 블로그에 정리를 해도 괜찮을까요?

1

30

1

교재(3쇄)와 강의 내용 문의

0

30

2

섹션2번 부분 강의 화면이 잘 못된것 같아서 문의합니다.

0

23

1

call stack 표현이 잘못표현된것이 아닌가요?

0

66

2

React 와 Virtual DOM 의 이야기 영상 실행이 안됩니다.

0

34

1

일반 강의와 차이점?

1

53

1

!= 연산자의 역할

0

35

1

중요하진 않지만 설명하신부분에서 안된부분..

1

37

1

강의 듣는 순서가 어떻게 되나요?

0

50

1

stopPropagation()에 대해서 질문 있습니다.

0

50

2

12.13) 하단 여백 스타일링 관련 질문 드립니다.

0

65

2

27강 Context내 RSC 사용 관련 문의

0

85

3

혹시 다음 강의 제작 예정된 것들이 있을까요?

0

81

1

Enable Linting 항목을 찾을수가 없습니다.

0

46

2

에러 질문드립니다

0

63

2

1강 질문

0

70

2

수업교안 url 오타

0

66

1

Destructuring 할 때 변수 선언.

0

125

1

export 선언 위치

0

98

1

자바스크립트 후속강의

0

292

1

코드샌드박스애서 vue강의 따라 코딩하는게 가능할까요?

1

206

1

코드샌드박스에 들어갔는데 잠금표시가 되어있습니다.

2

263

1