반응형
HTML과 자바스크립트에서 이벤트를 등록할 수 있습니다. 1. HTML에서 이벤트 등록 btn1 HTML 태그에 onclick을 입력하여 클릭 이벤트를 등록하는 방법이 있습니다. 2. JavaScript onclick 속성 추가하기 자바스크립트에서 onclick속성을 부여해서 이벤트를 추가하는 방법이 있습니다. const btn = document.querySelector('#btn2'); btn.onclick = function() { alert('Hi') }; 3. addEventListener를 이용하여 이벤트 등록하는 방법 element에서 addEventListener를 이용하여 클릭 이벤트를 등록할 수 있습니다. const btn = document.getElementById('btn'); b..
HTML, CSS, 자바스크립트를 이용하여 배경색을 1초마다 다른 색으로 변경시켜 보도록 하겠습니다. 변경도 자연스럽게 슬라이드 되도록 한번 해보도록 하겠습니다. 아래 run pen을 누르시면 동작합니다. See the Pen slide by powerku (@powerku) on CodePen. 먼저 HTML을 이용하여 div, ul, li 태그를 만들어줍니다. li 태그들이 이동하면서 화면이 슬라이드 되는 것처럼 보이게 됩니다. css도 추가합니다. .box { width: 300px; height: 300px; position: relative; overflow: hidden; } ul { position: absolute; top: 0px; left: 0px; width: 2100px; heigh..
자바스크립트 String, Array에서 사용할 수 있는 includes 함수에 대해서 설명드리겠습니다. 간단히 includes 함수 사용법에 대해서 알아보겠습니다. String에서도 사용할 수 있고 Array에서도 사용할 수 있습니다. const array = [1, 2, 3]; console.log(array.includes(2)); // true console.log(array.includes(4)); // false const string = 'Hello Javascript'; console.log(string.includes('Hello')); // true console.log(string.includes('Hi')); // false 첫 번째는 array 함수에서는 2가 있는지 여부를 확인하..
자바스크립트를 에서 createElement, createTextNode를 이용하여 버튼을 만들어 보겠습니다. 먼저 두 가지 함수에 대해서 먼저 알아보겠습니다. createElement createElement는 지정한 태그 네임을 입력하면 해당 태그의 element를 반환합니다. 이렇게 사용할 수 있습니다. const btn = document.createElement('button'); createTextNode createTextNode는 텍스트 노드를 반환합니다. const btnText = document.createTextNode('button'); 이제 createElement로 만들어준 버튼에 appendChild를 이용하여 텍스트 노드를 넣어줍니다. btn.appendChild( btnT..
자바스크립트에서 많이 사용하는 타이머 함수 setTimeout입니다. setTimeout setTimeout은 일정 시간이 지난 뒤에 함수를 실행시키는 함수입니다. 두 개 파라미터를 받습니다. 첫 번째는 실행시킬 함수입니다. 두 번째는 시간입니다. ms 단위라서 1000이 1초입니다. 아래 예제는 1초 뒤에 실행되는 setTimeout 함수입니다. setTimeout(function() { console.log('setTimeout') }, 1000) clearTimeout clearTimeout을 이용하여 실행을 중단할 수 있습니다. const timer = setTimeout(function() { alert('2초 뒤 실행') }, 2000) clearTimeout(timer); 자바스크립트를 사용..
자바스크립트 타이머 함수 setInterval과 clearInterval을 이용하여 현재 시간이 계속 나오는 시계를 만들어 보도록 하겠습니다. setInterval setInterval은 일정 시간 간격으로 함수를 계속 실행시키는 함수입니다. 두 개 파라미터를 받고 첫 번째는 실행시킬 함수 두 번째는 시간입니다. 시간의 경우에 ms 단위라서 1초의 경우 1000ms입니다. 아래와 같이 실행시키고 싶은 함수를 첫 번째 인자에 작성하고 반복적으로 실행시킬 시간을 두 번째 인자에 작성합니다. setInterval(function() { // to do something }, 1000) clearInterval clearInterval은 setInterval로 실행시킨 반복을 중단할 때 쓰는 함수입니다. set..
2023년 1월 10일에 크롬이 109 버전으로 업데이트되었습니다. event.path는 이벤트가 발생한 요소에서 최상의 요소까지 배열을 반환합니다. [button#btn1, body, html, document, Window] 그러나 크롬 109 버전부터 event에 path가 더 이상 지원을 하지 않고 되었습니다. 기존에 event.path를 사용하였으면 composedPath()로 변경하셔야 합니다. See the Pen Untitled by powerku (@powerku) on CodePen. https://chromestatus.com/feature/5726124632965120 Chrome Platform Status chromestatus.com https://developer.mozill..
자바스크립트에 reduce 함수가 있습니다. 자바스크립트 레퍼런스 문서에 reduce에 대해서 설명을 너무 어렵게 해놔서 무슨 말이지 하나도 모르겠네요. 좀 간단하계 합계를 구하는 함수를 만들어보면서 설명드리겠습니다. var arr = [1, 2, 3, 4, 5]; var sum1 = arr.reduce((a, b) => a + b)); // 15 reduce는 배열 함수입니다. 배열에서 사용할 수 있는 함수입니다. (a, b) => a + b) 이렇게 들어가 있는 부분이 reduce의 파라미터 입니다. reduce가 실행 될때, 해당 배열만큼 해당 callback이 타게 됩니다. a의 경우에는 이전 callback의 return 값입니다. b는 현재 배열의 값이 구요. 그렇게 되면서 이전 합계의 값을 ..
자바스크립트에서 팩토리패턴 사용하는 방법에 대해서 설명해드리려고 해요 팩토리 패턴은 디자인 패턴 중에 하나입니다. 디자인패턴이란? 옛날부터 개발자들이 포로그램을 만들 때, 생겼던 문제점들을 해결하기 위해 만들어낸 전형적인 패턴입니다. 그중 팩토리 패턴은 생성 패턴 중 하나입니다. 팩토리 패턴이란? 부모 클래스에서 자식 객체를 생성하는데, 그 객체의 유형을 다양하게 할 수 있는 패턴입니다. 이렇게 이야기하면 잘 이해가 안 가시죠? 실제 소스로 한번 볼까요? 예시 1 class Superman { name; constructor() { this.name = "Superman"; } } class Batman { name; constructor() { this.name = "Batman"; } } class ..
자바스크립트에서 element를 찾을 때,가장 많이 사용하는 함수들 입니다. querySelector와 querySelectorAll 입니다. querySelector(selector) selector를 선택자로 전달해서 일치하는 하나의 element를 return 합니다. 없으면 null을 반환합니다. document.querySelector('p'); querySelectorAll(selector) selector와 일치하는 모든 element의 배열을 반환 합니다. document.querySelectorAll('p'); 아래 예제에서 확인 할 수 있습니다. See the Pen Untitled by Young Jun Koo (@YoungJu-Ku) on CodePen.