DOM(Document Object Model) API(Application Programming Interface)
// HTML 요소(Element) 1개 검색/찾기
const boxEl = document.querySelector('.box');
// HTML 요소에 적용할 수 있는 메소드 !
boxEl.addEventListener();
// 인수(Arguments)를 추가 가능!
boxEl.addEventListener(1,2);
// 1 - 이벤트(Event, 상황)
boxEl.addEventListener('click', 2);
// 2- 핸들러(Handler, 실행할 함수)
// 이벤트가 발생시 그를 처리하는 함수를 핸들러라고 한다.
boxEl.addEventListener('click', function() {
console.log('Click~!');
})
// 요소의 클래스 정보 객체 활용 !
boxEl.classList.add('active');
let isContains = boxEl.classLsit.contains('active');
console.log(insContains); // true
boxEl.classList.remove('active');
let isContains = boxEl.classLsit.contains('active');
console.log(insContains); // false
자바스크립트에서는 클래스이름으로 요소의 정보를 가져와서 클래스 이름을 추가 혹은 삭제하거나 해당 요소에 이벤트가 발생하면 처리하는 함수 '핸들러'가 있다.
const boxEls = document.querySelectorAll('.box');
console.log (boxEl);
boxEls.forEach(function (boxEL, index) {
boxEl.classList.add(`order-${index}`);
console.log(index, boxEl);
});
// getter, 값을 얻는 용도
console.log(boxEl.textContent);
// Setter, 값을 지정하는 용도
boxEl.textContent = 'HEROPY?!';
console.log(boxEL.textContent); // HEROPY?!
HTML을 굳이 보여주지 않았지만, .box 클래스 네임을 가진 모든 요소를 가져와서 forEach로 해당 각 요소의 인덱스 값을 읽어와
템플릿 리터럴로 클래스이름을 새로 넣어주고, 출력하는 코드이고, 값을 얻거나 지정하냐에 따라 DOM API getter, setter 라는 말을 붙인다.
Method Chaining
const a = 'Hello~';
const b = a.split('').reverse().join(''); // 메소드 체이닝
console.log(a); // Hello~
console.log(b); // ~olloH
상단의 코드처럼 메소드를 이어 붙여 체인처럼 이어진것을 말하는데 클린코드를 위해 중요한 것 같다.
'Javascript > MGS-JS' 카테고리의 다른 글
Javascript Data Practical (0) | 2022.07.03 |
---|---|
자바스크립트 데이터 - Javascript Data (0) | 2022.07.01 |
클래스 개념 - Class Concept (0) | 2022.07.01 |
함수 복습 - Fn Theory Recap (0) | 2022.06.30 |
NVM ( Node Version Management ) & NPM ( Node Package Manager ) (0) | 2022.06.30 |