• 회원가입
  • 로그인
  • 구글아이디로 로그인

[api] HTML5 - Web Worker - 백그라운드실행JS (= 웹워커)

목차
  1. Web Worker 예제 - 백그라운드 실행 JS
  2. Web Worker 정의

 

Web Worker 예제 - 백그라운드 실행 JS

 

<p>숫자 세기: <output id="result"></output></p>

<button onclick="startWorker()">Worker 시작</button> 

<button onclick="stopWorker()">Worker 중단</button>


<script>

var w;


function startWorker() {

  if(typeof(Worker) !== "undefined") { // Web Worker 지원여부 체크

    if(typeof(w) == "undefined") {

      w = new Worker("num_count.js"); // Web Worker 객체 생성

    }

    w.onmessage = function(event) { // 서버에서 메세지수신 이벤트 발생하면

      document.getElementById("result").innerHTML = event.data;

    };

  } else {

    document.getElementById("result").innerHTML = "Web Workers 지원 않는 브라우저는 개나 줘버려.";

  }

}


function stopWorker() { 

  w.terminate(); // Web Worker 제거

  w = undefined; // Web Worker 제거 후, 코드 재사용 목적

}

</script>

 

codepen


PS. /num_count.js 파일 소스

 

var i = 0;


function timedCount() {

  i = i + 1;

  postMessage(i);

  setTimeout("timedCount()",500);

}


timedCount();

 

codepen

 

Web Worker 정의

 

웹페이지 성능에 영향 안 주면서, 백그라운드에서 실행되는 JS.

 


 

IE10 이상 주요 최신 브라우저 모두 지원.

 


 


분류 제목
image HTML - <svg> 태그 - 그림그리기 (= 동적그림 = svg태그 = 에스브이지태그)
frame HTML - <frame> 태그 - 프레임셋안 개별프레임창 (HTML5제외)
media HTML - <source> 태그 - 미디어소스 불러오기 (= source태그 = 소스태그)
table HTML - <tfoot> 태그 - 테이블꼬릿말그룹 (= 테이블풋 = tfoot 태그 = 티풋태그) (HTM…
responsive HTML - Responsive Web Design (반응형 웹디자인) 장단점 + 홈페이지 제작법
style HTML - <footer> 태그 ★ - 단락꼬릿말 (= footer태그 = footer요소 = 푸터태그 =…
formatting HTML - <blockquote> 태그 ★ - 긴 인용구 (= blockquote태그 = blockquot…
link HTML - <nav> 태그 ★ - 네비게이션링크모음 (= nav태그 = 네브태그)
table HTML - <tbody> 태그 - 테이블셀그룹 (= 테이블바디 = tbody태그 = 티바디태그) (HTML…
formatting HTML - <ins> 태그 - 텍스트삽입표시 (= ins태그 = 인스태그 = 삽입태그)
formatting HTML - <cite> 태그 - 인용구 제목 (= cite태그 = cite요소 = 저작물제목 = 인용태그 …
formatting HTML - <bdo> 태그 - 텍스트출력방향 (= bdo태그 = bdo요소 = 글자방향 = 브도태그 = …
form HTML - <fieldset> 태그 ★ - 폼양식 관련요소묶음 (= fieldset태그 = 필드셋태그) (…
font HTML - <big> 태그 - 큰글씨 (= big태그 = big요소 = 큰글자 = 글자 크게 = 빅태그)…
formatting HTML - <var> 태그 - 변수정의 (= 변수태그 = var태그 = 바태그)
attribute HTML - Global Attribute - 전역속성 종류
form HTML - <output> 태그 - 계산 결과값 출력 (= output태그 = 아웃풋태그)
programming HTML - <object> 태그 - 미디어삽입 (= object태그 = 어브젝트태그)
intro HTML - 태그 문법 ★
api HTML5 - Server-Sent Event - 서버전송이벤트 (= 서버센트이벤트)
14/18
목록
찾아주셔서 감사합니다. Since 2012