티스토리 뷰

웹/부스트코스

[WEB]window객체

cll179 2018. 6. 3. 13:13

window 객체

브라우저 개발을 하다 보면, window라는 객체가 있습니다.

window에는 많은 메서드들이 존재하며, 아래처럼 사용할 수 있습니다.

window는 디폴트의 개념이므로 생략할 수 있습니다.

window.setTimeout()
setTimeout() //window는 전역객체라서 생략 가능하다.

또 다른 ex) window.elert()

 

 

setTimeout() 실행 순서

예제1)

1
2
3
4
5
6
7
8
9
10
function run(){
  console.log("run start");
  setTimeout(function(){
    var msg = "hello codesquad";
    console.log(msg);
  },3000);
  console.log("run end");
}
 
run();
cs

 

*실행결과

run start

run end

hello codesquad

 

예제2)

1
2
3
4
5
6
7
8
9
10
function run(){
  setTimeout(function(){
    var msg = "hello codesquad";
    console.log(msg);
  },3000);
}
 
console.log("run start");
run();
console.log("run end");
cs

 

*실행결과

run start

run end

hello codesquad

 

예제3)

1
2
3
4
5
6
7
8
9
10
11
function run(){
  setTimeout(function(){
    var msg = "hello codesquad";
    console.log(msg);
  },3000);
  console.log("run function end");
}
 
console.log("start");
run();
console.log("end");
cs

 

*실행 결과

start

run function end

end

hello codesquad

 

 

=> 순차적으로 run()은 이미 실행되고 반환이 끝난채 console.log("end");가 실행된다. setTimeout은 이벤트 큐에 보관되어 있다가 나중에 실행된다. 이것이 비동기 콜백함수의 특징이다.

 

비동기에 대한 개념을 잘 정리해두는 것이 좋다.

 

 

생각해보기

 

*setInterval 함수

- 일정 시간마다 반복 실행하는 함수

 

ex)

1
2
3
4
5
6
7
function run(){
  setInterval(playFunc=function(){
    console.log("반복 중");
  },2000);
}
 
run();
cs

 

- 반복을 멈추기 위해 clearInterval() 이라는 함수를 이용할 수 있다. 

 

참고 사이트 : http://www.edwith.org/



본 게시물은 개인적인 용도로 작성된 게시물입니다. 이후 포트폴리오로 사용될 정리 자료이니 불펌과 무단도용은 하지 말아주시고 개인 공부 목적으로만 이용해주시기 바랍니다.

' > 부스트코스' 카테고리의 다른 글

[WEB]Browser Event, Event object, Event handler  (0) 2018.06.03
[WEB]DOM과 querySelector  (1) 2018.06.03
[WEB]JSP 라이프사이클  (1) 2018.05.26
[WEB]JSP란?  (0) 2018.05.26
[WEB]Element가 배치되는 과정  (0) 2018.05.20
댓글