JavaScript

[DOM] JS - NodeList 속성 - 노드리스트 (= 노드목록)

목차
  1. NodeList 객체
  2. NodeList 개수
  3. (HTMLCollection / NodeList) 비교

 

NodeList 객체 

 

웹문서에서 추출한 노드 집합

 


PS. 

  • HTMLCollection 객체와 거의 유사. 즉, 배열은 아니나 배열처럼 색인번호(index) 통해서 각 노드에 접근 가능. 색인번호는 0부터 시작.
  • 일부 (구형) 브라우저는 getElementsByClassName()과 같은 메서드에 대해 HTMLCollection 대신 NodeList 객체 반환.
  • 모든 브라우저는 childNodes 속성에 대해 NodeList 객체 반환.
  • 대부분 브라우저는 querySelectorAll() 메서드에 대해 NodeList 객체 반환.

 


[예제]

 

<h2>홈짱닷컴 Homzzang.com</h2>


<p>HTML</p>

<p>CSS</p>

<p>JS</p>

<p id="demo"></p>


<script>

var ps = document.querySelectorAll("p");

var text = ps[1].innerHTML; // 2번째 P요소 텍스트

document.getElementById("demo").innerHTML = text;

</script>

 

결과보기 

 

NodeList 개수

 

  • length 속성 :  NodeList 안의 노드 개수
  • NodeList 안 노드에 대해 반복문 적용 시 매우 유용. (2번째 예제)

 


[예제1]

 

<h2>홈짱닷컴 Homzzang.com</h2>


<p>HTML</p>

<p>CSS</p>

<p>JS</p>

<p id="demo"></p>


<script>

var ps = document.querySelectorAll("p");

var num = ps.length;

document.getElementById("demo").innerHTML = num; // 4

</script>

 

결과보기


[예제2]

 

<h2>홈짱닷컴 Homzzang.com</h2>


<p>HTML</p>

<p>CSS</p>

<p>JS</p>


<button onclick="homzzang()">클릭</button>


<script>

function homzzang() {

  var ps = document.querySelectorAll("p");

  var i;

  for (i = 0; i < ps.length; i++) {

    ps[i].style.color = "red";

  }

}

</script>

 

결과보기

 

(HTMLCollection / NodeList) 비교

[유사점]


  • 배열은 아니지만, 배열처럼 색인번호 통해 각 객체 안 요소(노드)에 대해 접근 가능.
  • 색인번호는 0부터 시작. (※ 반복문 가능)
  • 배열 아니기 때문에 배열 메서드 사용 불가. (예) valueOf(), push() , pop() , join()

 



[차이점]

 

HTMLCollection 

  • 이름, ID, 색인번호로 각 요소에 접근 가능.
  • 속성노드와 텍스트노드 못 갖음.


NodeList

  • 색인 번호로만 각 노드에 접근 가능.
  • 속성노드와 텍스트노드 갖을 수 있음.

 



분류 제목
DOM_Document JS - styleSheets 속성 - 스타일시트집합
js JS - rules 속성 - styleSheets 객체의 속성
DOM_Event JS - cancelBubble 속성 - 부모요소로 이벤트 확산 방지 (= 상위요소로 이벤트확산취소 = 캔슬…
DOM_Event JS - composedPath() 메서드 - 이벤트객체흐름파악 (=이벤트실행객체경로파악 = 컴포우즈드패스메…
js JS - 특정요소 함수실행제외 (= 배열문자열포함검사) ★★★★★
js JS - Keyboard KeyCode (키보드키코드 = 키보드키번호 = 키보드키조회 = 키보드코드 = 키보…
js JS - ctrlKey, altKey, shiftKey 속성 - Ctrl키, Alt키, Shift키 눌림여부…
js JS - 숫자만 입력 가능
js JS - 클릭버튼생성 (= 클릭탭생성), 자식요소개별아이디부여, 클릭요소삭제 (= 클릭요소제거 = 클릭부모요…
js JS - F12키차단 (=개발자도구차단) + 마우스오른쪽금지 (= 마우스오른쪽차단 = 불펌방지 = 클릭방지)
js JS - Drag & Drop (= Draggable) - 요소이동 (= 요소끌어이동 = 드래그앤드롭 = 드…
js JS - INPUT입력값을 GET방식으로 넘기기 (=인풋값, 인풋입력밧, 겟방식전달)
HTML_Objects JS - <thead> 객체 - 테이블머리글그룹 (= 테이블헤드그룹 = thead태그 = 티헤드태그) (HT…
js JS - 아이피 유효성검사 (= 아이피 유효성체크 = 아이피 적합성검사 = 아이피 적합성체크)
DOM_Event JS - DOMContentLoaded 이벤트 ★★★★★ - 돔 웹문서 로드 완료 이벤트(= DOMConte…
82/89
목록
 홈  PC버전 로그인 일본어
그누앞단언어
그누뒷단언어
그외코딩언어
그누보드
제작의뢰
Q&A
커뮤니티
웹유틸
회원센터
홈짱닷컴 PC버전 로그인