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

[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 이상 주요 최신 브라우저 모두 지원.

 


 


분류 제목
formatting HTML - <progress> 태그 - 진행상태바 (=진행바 = 진행막대 = 작업막대 = progress태…
deprecated HTML - <param> 태그 - 미디어매개변수 (= param태그 = 패럼태그 = 파람태그 = 패러미터태…
form HTML - <optgroup> 태그 - 선택사항묶음 (= optgroup태그 = 옵트그룹태그, 옵션그룹태그…
list HTML - <ul> 태그 ★ - 객체 ★ - 순서없는리스트 (= 순서없는목록태그 = ul태그 = 유엘태그/…
style HTML - <aside> 태그 ★ - 관련 별도 콘텐츠 (= aside태그 = 어사이드태그)
formatting HTML - <wbr> 태그 - 한 단어 내 줄바꿈 위치/지점 표시 (= wbr태그 = 더블유비알태그)
attribute HTML - Event Attribute - 이벤트속성종류
formatting HTML - <q> 태그 - 짧은인용구 (= 짧은인용태그 = q태그 = 큐태그)
intro HTML - Accessibility (웹표준・웹접근성) ★
formatting HTML - <strike> 태그 - 취소선 (= 스트라이트태그) (HTML5 지원 X)
table HTML - <thead> 태그 - 테이블머리글그룹 (= thead태그 = 티헤드태그) (HTML5수정)
basic HTML - <title> 태그 ★ - 웹문서제목 (= title태그 = 타이틀태그)
formatting HTML - <ruby> 태그 ★ - 글자 상단 주석 달기 (= ruby태그 = 루비 태그) ※ 후리가나 달…
list HTML - <li> 태그 ★ - 리스트목록 (= 리스트아이템 = li태그 = 리태그/리스트태그/엘아이태그…
etc HTML - inputmode 전역속성 - 사용자 입력값 데이터타입 힌트 (= inputmode속성 = 인풋…
list HTML - <ol> 태그 ★ - 순서있는리스트 (= 목록태그 = ol태그 = 오엘태그 = 올태그) - (H…
etc HTML - Entity (= 태그 실체값 = 특수문자/기호 실질값 = 독립체)
formatting HTML - <address> 태그 - 연락처 (= address태그 = address요소 = 어드레스태그)
style HTML - <main> 태그 ★ - 문서기본내용 (= main태그 = 메인태그)
image HTML - <svg> 태그 - 그림그리기 (= 동적그림 = svg태그 = 에스브이지태그)
13/18
목록
찾아주셔서 감사합니다. Since 2012