컴퓨터 공부/🕸️ Web 18

Javascript 에서 forEach 함수는 비동기함수를 기다리지 않아요!

🚨 문제 상황 배열에 담긴 요소들을 하나씩 뽑아내는 작업을 할 때 아래와 같은 코드가 있다고 해보자. const allu = new Array(10).fill('dachshund'); const result = [] const asyncFunction = (i) => { return new Promise(resolve => { setTimeout(() => { result.push(i) resolve() }, 1000); }) } allu.forEach(async (_,i)=>{ await asyncFunction(i) }) console.log(result) 위 코드처럼 작성하면 result 값에 원하던 값이 들어가있지 않고 초기의 배열인 빈값이 출력됐다. forEach는 내부에 들어있는 순차적으로배열..

Javascript 기본 - 1) 자바스크립트 JS 기초

- console 객체는 아무 전역 객체에서나 접근할 수 있다. - time과 timeEnd의 매개변수에는 똑같은 문자열을 넣어줘야 한다. - 자바스크립트에서 변수를 선언할 때, var, let, const를 사용한다. 1. [변수 선언 방식] var : 중복 선언과 재할당이 가능하다. let(ES6) : 중복 선언은 불가하며, 재할당은 가능하다. const(ES6) : 중복 선언과 재할당 둘 다 불가능하다.(※ const로 선언했어도 배열과 객체의 값을 변경하는 것은 가능하다.) 2. [유효한 참조 범위] var : 함수 레벨 스코프(function-level-scope) 아래와 같이 함수 내에서 선언된 변수는 함수 내에서만 유효하다. 하지만, 함수 외부에서는 참조할 수 없다. let / const :..

Javascript 에서의 setInterval(함수,간격)

setInterval() 함수는 인자값을 2개 받는데, 첫번째 인자로는 실행할 함수를 받고, 두번째 인자로는 그 함수를 실행하고 싶은 시간(실행할 시간 간격)을 받는다. 이 때, 시간의 단위는 ms 로, 예를 들어 3초를 주고 싶다하면 3000을 값으로 집어 넣어야 한다. 예를 한번 살펴보자. const clockContainer = document.querySelector(".js-clock"), clockTitle = document.querySelector('h1'); function getTime(){ const date = new Date(); // Date는 클래스이다. date 객체 생성 const hours = date.getHours(); const minutes = date.getMin..

Javascript 에서의 toogle 함수

먼저 html 파일이 이런 html 파일이 있다고 해보자. This is title!! css 는 아래와 같다. body { background-color: peru; } .btn { cursor: pointer; // btn 클래스 } h1 { color: #344952; transition: color 0.5s ease-in-out; } .clicked { color: red; // clicked 클래스 } javascript 는 아래와 같다. const title = document.querySelector("#title"); const CLICKED_CLASS = "clicked"; function handleClick(){ const hasClass = title.classList.contain..

Javascript 에서의 '이벤트'에는 어떤 것들이 있을까?

https://developer.mozilla.org/ko/docs/Web/Events 이벤트 참조 | MDN DOM 이벤트는 발생한 흥미로운 것을 코드에 알리기 위해 전달됩니다. 각 이벤트는 Event 인터페이스를 기반으로한 객체에 의해 표현되며 발생한 것에 대한 부가적인 정보를 얻는데 사용되는 추가 developer.mozilla.org 이곳을 참조하면, 각종 이벤트 들이 다 나와있다. 온라인, 오프라인 처럼 와이파이가 연결되고 끊겼을 때 처리하는 이벤트도 있었다. function handleOffline(){ console.log("인터넷이 끊겼습니다.") } function handleOnline(){ console.log("인터넷이 연결되었습니다.") } window.addEventListene..

반응형