HTML DOM의 lastChild 속성은 지정된 노드의 마지막 자식 노드를 노드 객체 형태로 반환합니다.
주의: 이 속성은 텍스트 노드와 주석(주석) 노드를 무시하지 않습니다. 따라서 마지막 자식이 요소가 아닌 공백이나 줄바꿈일 경우에도 그대로 반환되므로 사용 시 각별히 주의해야 합니다.
구문
lastChild 속성의 기본 구문은 다음과 같습니다.
nodeList.lastChild
예제
아래 예제를 통해 HTML DOM lastChild 속성의 실제 동작을 확인해 보겠습니다.
<!DOCTYPE html>
<html>
<head>
<title>HTML DOM lastChild</title>
<style>
form {
width:70%;
margin: 0 auto;
text-align: center;
}
* {
padding: 2px;
margin:5px;
}
input[type="button"] {
border-radius: 10px;
}
ul{
width: 30%;
margin: 0 auto;
}
</style>
</head>
<body>
<form>
<fieldset>
<legend>HTML-DOM-lastChild</legend>
<h3>Grocery Store</h3>
<ul id="dayList">
<li>Monday</li>
<li>Tuesday</li>
<li>Wednesday</li>
<li>Thursday</li>
<li>Friday</li>
<li>Saturday</li>
<li>Sunday</li></ul>
// 닫는 <ul> 태그 앞에 공백을 추가하지 마세요. 공백도 lastChild로 인식됩니다
<input type="button" onclick="getTimmings()" value="Get Sale Day">
<div id="divDisplay"></div>
</fieldset>
</form>
<script>
var divDisplay = document.getElementById("divDisplay");
var dayList = document.getElementById("dayList");
function getTimmings() {
divDisplay.textContent = 'Sale on last day of week: '+dayList.lastChild.textContent;
}
</script>
</body>
</html>실행 결과
위 코드를 실행하면 다음과 같은 결과를 확인할 수 있습니다.
'Get Sale Day' 버튼을 클릭하기 전 화면입니다.

'Get Sale Day' 버튼을 클릭한 후 화면입니다. 버튼을 누르면 목록의 마지막 자식 노드인 'Sunday' 항목이 표시됩니다.

lastChild 사용 시 유의사항
lastChild 속성은 요소 노드뿐만 아니라 텍스트 노드와 주석 노드도 포함하여 반환합니다. HTML에서 태그 사이의 줄바꿈이나 들여쓰기 공백 역시 하나의 텍스트 노드로 취급되기 때문에, 의도한 요소가 아닌 공백 노드가 반환될 수 있습니다. 순수하게 요소 노드만 다루고 싶다면 lastElementChild 속성을 사용하는 것이 더 안전합니다.