element.getAttribute(attributeName)
<video src="video.mp4" autoplay></video>
const myVideo = document.querySelector("video");

/* 속성의 값을 문자열로 반환 */
console.log(myVideo.getAttribute("src")); // "video.mp4"

/* 속성의 값이 존재하지 않으면 빈 문자열("")을 반환 */
console.log(myVideo.getAttribute("autoplay")); // ""

/* 해당 요소에 일치하는 속성이 없다면 null을 반환 */
console.log(myVideo.getAttribute("loop")); // null
element.setAttribute(attributeName, value)
<input type="password" value="test">
<button type="button">비밀번호 보기</button>
const elem = document.querySelector("input");
const button = document.querySelector("button");

button.addEventListener("click", () => { // 버튼 클릭 이벤트
    /* 버튼을 클릭하면,
       input 요소의 type 속성 값이 password에서 text로 설정됨 */
    elem.setAttribute("type", "text");
});
실제 적용된 모습 "비밀번호 보기" 버튼을 클릭해 보세요!
element.removeAttribute(attributeName)
<style>
    .bg {
        background-color: yellowgreen;
    }
</style>
<p class="bg">배경색을 지워보세요.</p>
<button type="button">배경색 지우기</button>
const elem = document.querySelector("p");
const button = document.querySelector("button");

button.addEventListener("click", () => { // 버튼 클릭 이벤트
    /* 버튼을 클릭하면,
       p 요소의 class 속성이 제거됩니다. */
    elem.removeAttribute("class");
});
실제 적용된 모습 "배경색 지우기" 버튼을 클릭해 보세요!
element.hasAttribute(attributeName)
<video src="video.mp4" autoplay></video>
const myVideo = document.querySelector("video");

console.log(myVideo.hasAttribute("src")); // true
console.log(myVideo.hasAttribute("autoplay")); // true
console.log(myVideo.hasAttribute("loop")); // false
element.toggleAttribute(attributeName[, force])
<input type="text">
<button type="button">input box 숨기기/표시하기</button>
const elem = document.querySelector("input");
const button = document.querySelector("button");

button.addEventListener("click", () => { // 버튼 클릭 이벤트
    // <input> 요소에 hidden 속성이 없으면 추가, 있으면 제거함
    elem.toggleAttribute("hidden");
});
실제 적용된 모습 "input box 숨기기/표시하기" 버튼을 클릭해 보세요!