실습 - 노드 다루기 (4) - ex08 filter()와 find()
195
작성한 질문수 7
강사님의 설명 중 확인되어야 할 부분이 있어 의견을 남깁니다.
//find()는 전체(혹은 기준 값 하위)에서만 검색을 하지만 filter()는 자기 자신의
//레벨에서 검색을 한다.
라고 설명 해주셨습니다만, 제가 예제를 통해 이해한 것은 아래와 같습니다.
- filter() 메서드
- filter() 메서드로 어떤 요소를 찾으려면 복수 개의 jQuery객체를 가진 객체에서 사용해야 한다.
예시:
ex09에서 <div id="samplePage"> ┬ div id="header"
├ div id="content"
└ div id="footer"
let $divGroup = $("div#samplePage div");
- filter() 메서드는 $()함수를 통해 얻은 jQuery객체 배열(유사 배열)의 원소들 중에서 원하는 것을 찾을 수 있다.
예시: $divGroup.filter("#header"); // → div id="header"를 찾는다. - filter() 메서드는 $()함수를 통해 얻은 단일 jQuery객체에서 사용하면 형제 노드 중 검색조건에 맞는 노드가 있어도 객체가 반환되지 않는다.
예시:
let $divHeader = $("div#header");
$divHeader.filter("#content"); // div id="content"에 해당하는 객체를 얻을 수 없다. - filter() 메서드는 대상이 되는 jQuery객체 배열(유사 배열)의 원소들의 자식 또는 자손 요소는 찾지 않는다.
- filter() 메서드로 어떤 요소를 찾으려면 복수 개의 jQuery객체를 가진 객체에서 사용해야 한다.
- find() 메서드
- find() 메서드는 복수 개의 jQuery객체를 가진 jQuery배열(유사 배열)이나 단일 jQuery 객체에서 사용할 수 있다.
- find() 메서드는 자식, 자손 노드를 모두 탐색해 검색 조건에 맞는 노드를 반환한다.
- find() 메서드는 복수 개의 jQuery객체를 가진 jQuery배열(유사 배열)이나 단일 jQuery 객체에서 사용할 수 있다.
위 메서드들의 성질을 볼 때
filter() 메서드는 어떤 노드를 찾기 보다는 복수 개의 결과에서 특정 요소를 선택하는 데 사용하는 것이 유용해 보입니다.
find() 메서드는 filter() 보다 '검색' 처럼 사용할 수 있습니다.
정정되어야 할 내용이 있으면 다른 학우님들께 의견 부탁드립니다.
감사합니다.
답변 0
안녕하세요 한번 더 문의드립니다.
0
14
1
81강 실습 자료 없음
0
10
2
선생님 공유해주신 핸드북에 링크가 몇개 잘못되었어요
0
19
2
62강 실습자료가 잘못되었습니다.
0
17
1
코드 자료는 없는걸까요?
0
39
3
강의 목표
0
33
1
강의 노트 위주로 학습
0
36
1
쿠키 생성 관련
0
64
3
JWT auth error invalid token
0
59
2
경력기술서는 어떤 방향이 좋을까요?
0
52
2
MSA 와 BFF 아키텍처 설명 부분에 대한 문의
0
52
1
eslint.config.js 설정 질문입니다.
0
63
2
7강 흐름 제어 아키택쳐 코드 순서
1
53
1
수업자료 어디서 찾아볼 수 있나요?
0
47
2
함수 강의의 정답.. 어떤가요?
0
40
1
깃권한요청드립니다
0
39
1
<div id="banner">배너 이미지</div> 관련 질문
0
34
1
강의자료
0
41
1
실습 -노드 다루기 (6)
0
243
0
실습 - 노드 생성, 추가, 삭제, 이동 (4) - ex09 中
0
290
0
실습 - 노드 다루기(3) ex05 中
0
173
0
ex09실습 - onload과 ready차이
0
255
0
$(selectedItem)의 의미
0
259
1
$selectedItem 이 의미가 뭔지 모르겠어요.
0
313
2





