HTML DOM의 removeNamedItem() 메서드는 HTML 문서에서 매개변수로 지정한 이름과 일치하는 속성 노드를 요소에서 제거하는 기능을 합니다. 이 메서드는 attributes 속성이 반환하는 NamedNodeMap 객체에 포함되어 있으며, 삭제하려는 속성의 이름을 문자열로 전달하면 해당 속성이 즉시 제거됩니다.
구문
removeNamedItem() 메서드의 기본 구문은 다음과 같습니다.
node.removeNamedItem(node);
예제
다음은 removeNamedItem() 메서드를 활용해 <p> 요소의 style 속성을 제거하는 실전 예제입니다.
<!DOCTYPE html>
<html>
<head>
<style>
html{
height:100%;
}
body{
text-align:center;
color:#fff;
background: linear-gradient(62deg, #FBAB7E 0%, #F7CE68 100%) center/cover no-repeat;
height:100%;
}
.btn{
background:#0197F6;
border:none;
height:2rem;
border-radius:2px;
width:60%;
margin:2rem auto;
display:block;
color:#fff;
outline:none;
cursor:pointer;
}
</style>
</head>
<body>
<h1>DOM removeNamedItem() method Demo</h1>
<p style="color:#db133a;font-size:1.2rem;">Hi! I'm a para element in HTML with some random text</p>
<button onclick="remove()" class="btn">Remove Attribute using removeNamedItem() method</button>
<script>
function remove() {
var p=document.querySelector("p");
p.attributes.removeNamedItem("style");
}
</script>
</body>
</html>실행 결과
위 코드를 실행하면 다음과 같은 화면이 출력됩니다.

화면에 표시된 "Remove Attribute using removeNamedItem() method" 버튼을 클릭하면 자바스크립트가 실행되어 <p> 요소에서 style 속성이 제거됩니다. 그 결과 빨간색으로 스타일링되어 있던 문단이 기본 스타일로 되돌아가는 것을 확인할 수 있습니다.

핵심 정리
removeNamedItem() 메서드는 element.attributes.removeNamedItem("속성명") 형태로 호출하며, 존재하지 않는 속성 이름을 전달하면 null을 반환하고 오류가 발생하지 않습니다. 특정 속성을 동적으로 제거해야 하는 상황에서 유용하게 활용할 수 있습니다.