--- title: ParentNode slug: Web/API/ParentNode tags: - API - DOM - Mixin - Node - ParentNode - Reference translation_of: Web/API/ParentNode ---
{{APIRef("DOM")}}

ParentNode 믹스인mixin은 자식을 가질 수 있는 모든 종류의 {{domxref("Node")}} 객체가 공통으로 가지는 메서드와 속성을 가집니다. {{domxref("Element")}}, {{domxref("Document")}}, {{domxref("DocumentFragment")}} 객체가 구현합니다.

선택자로 DOM 요소 선택하기 문서를 참고하여 CSS 선택자로 원하는 노드나 요소를 선택하는 법을 알아보세요.

속성

{{domxref("ParentNode.childElementCount")}} {{readonlyInline}}
ParentNode가 가진 자식 중 요소의 수를 반환합니다.
{{domxref("ParentNode.children")}} {{readonlyInline}}
ParentNode가 가진 모든 자식 중 요소만 모은 {{domxref("HTMLCollection")}}을 반환합니다.
{{domxref("ParentNode.firstElementChild")}} {{readonlyInline}}
ParentNode의 자식이자 {{jsxref("Element")}}인 객체 중 첫 번째를 반환합니다. 만족하는 자식이 없으면 {{jsxref("null")}}을 반환합니다.
{{domxref("ParentNode.lastElementChild")}} {{readonlyInline}}
ParentNode의 자식이자 {{jsxref("Element")}}인 객체 중 마지막을 반환합니다. 만족하는 자식이 없으면 {{jsxref("null")}}을 반환합니다.

메서드

{{domxref("ParentNode.append()")}} {{experimental_inline}}
ParentNode의 마지막 자식 다음에, 주어진 {{domxref("Node")}}나 {{domxref("DOMString")}} 객체를 삽입합니다. DOMString 객체는 동등한 {{domxref("Text")}}처럼 취급합니다.
{{domxref("ParentNode.prepend()")}} {{experimental_inline}}
ParentNode의 첫 번째 자식 이전에, 주어진 {{domxref("Node")}}나 {{domxref("DOMString")}} 객체를 삽입합니다. DOMString 객체는 동등한 {{domxref("Text")}}처럼 취급합니다.
{{domxref("ParentNode.querySelector()")}}
현재 ParentNode를 기준으로, 하위 요소 중 주어진 선택자를 만족하는 첫 번째 {{domxref("Element")}}를 반환합니다.
{{domxref("ParentNode.querySelectorAll()")}}
현재 ParentNode를 기준으로, 하위 요소 중 주어진 선택자를 만족하는 모든 요소의 {{domxref("NodeList")}}를 반환합니다.

명세

Specification Status Comment
{{SpecName('DOM WHATWG', '#parentnode', 'ParentNode')}} {{Spec2('DOM WHATWG')}} Split the ElementTraversal interface into {{domxref("ChildNode")}} and {{domxref("ParentNode")}}. The {{domxref("ParentNode.firstElementChild")}}, {{domxref("ParentNode.lastElementChild")}}, and {{domxref("ParentNode.childElementCount")}} properties are now defined on the latter. Added the {{domxref("ParentNode.children")}} property, and the {{domxref("ParentNode.querySelector()")}}, {{domxref("ParentNode.querySelectorAll()")}}, {{domxref("ParentNode.append()")}}, and {{domxref("ParentNode.prepend()")}} methods.
{{SpecName('Element Traversal', '#interface-elementTraversal', 'ElementTraversal')}} {{Spec2('Element Traversal')}} Added the initial definition of its properties to the ElementTraversal pure interface and used it on {{domxref("Element")}}.

브라우저 호환성

{{Compat("api.ParentNode")}}

같이 보기