
document 객체이다.
JavaScript에서 DOM 요소에 접근하는 방법은 여러 가지가 있다.
let h1 = document.getElementById("text");
console.log(h1);
innerText)let span = document.getElementById("number").innerText;
console.log("innerText:", span);
innerHTML)let spanHtml = document.getElementById("number").innerHTML;
console.log("innerHTML:", spanHtml);
innerText는 태그를 무시하고 순수 텍스트만,
innerHTML은 HTML 태그 구조까지 포함하여 인식한다.
document.getElementById("text").innerText = "변경된 텍스트입니다.";
document.getElementById("text").innerText = "<a href='#'>JS로 변경한 텍스트입니다.</a>";
// 출력: <a href='#'>JS로 변경한 텍스트입니다.</a>
document.getElementById("text").innerHTML = "<a href='#'>JS로 변경한 텍스트입니다.</a>";
// 출력: JS로 변경한 텍스트입니다. (링크 포함)
innerText: HTML 태그 인식 ❌ (문자 그대로 출력)innerHTML: HTML 구조로 렌더링됨 (태그까지 포함)| 접근 방식 | 설명 | 특징 |
|---|---|---|
innerText | 요소 안의 텍스트에 접근 | 태그 무시 |
innerHTML | 요소 안의 HTML 전체 접근 | 태그 인식 |
getElementById | 특정 id의 요소 객체에 접근 | 가장 많이 사용되는 접근 방식 |
JavaScript에서 이벤트(event)란 사용자의 동작(클릭, 입력 등)에 반응하는 동작을 의미한다.
이벤트를 연결하는 방법에는 대표적으로 3가지가 있다.
onclick 등의 속성으로 함수를 연결const print = () => {
alert("함수가 실행되었습니다.");
}
<button onclick="print()">알림창 출력</button>
() 생략 → 즉시 실행 방지const print = () => {
alert("함수가 실행되었습니다.");
}
document.getElementById("btn2").addEventListener("click", print);
<button id="btn2">분리된 이벤트 실행</button>
document.getElementById("btn3").addEventListener("click", () => {
alert("나만 쓰는 함수입니다.");
});
<button id="btn3">오직 나만 쓰는 함수</button>
<!DOCTYPE html>
<html lang="ko">
<head>
<meta charset="UTF-8">
<title>이벤트 연결 예제</title>
</head>
<body>
<button id="btn1" onclick="print()">알림창 출력</button>
<button id="btn2">분리된 이벤트 실행</button>
<button id="btn3">오직 나만 쓰는 함수</button>
<script>
// 1. 인라인 방식
const print = () => {
alert("함수가 실행되었습니다.");
}
// 2. addEventListener 방식
document.getElementById("btn2").addEventListener("click", print);
// 3. 익명 함수 방식
document.getElementById("btn3").addEventListener("click", () => {
alert("나만 쓰는 함수입니다.");
});
</script>
</body>
</html>
click, keydown, mouseenter, submit 등)한다.onclick, onchange 같은 속성은 HTML 태그에서 직접 사용할 수 있다.