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

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

 


 


분류 제목
link HTML - <link> 태그 ★ - 외부소스연결 (= link태그 = 링크태그) (HTML5수정) ※ 파비…
basic HTML - <hr> 태그 - 주제 다른 문단구분선 (= hr태그 = hr요소 = 가로선 = 수평선 = 에이…
form HTML - <select> 태그 ★ - 선택메뉴 (= select태그 = 실렉트태그 = 셀렉트태그) (H…
api HTML5 - Drag and Drop - 마우스로 끌어서 놓기 (= 드래그앤드롭)
font HTML - <i> 태그 - 이탤릭체 (=기울어진 글씨체 = 글씨 기울어지게 = i태그 = 아이태그, 이탤…
etc HTML - <tt> 태그 - 텔레타이프 텍스트 (= tt태그 = 티티태그)
media HTML - <audio> 태그 ★ - 음성파일재생 (= audio태그 = 오디오태그)
font HTML - <b> 태그 ★ - 굵은글씨 (= b태그 = 비태그) ※ 볼드태그 / bold태그 / 글씨 긁…
basic HTML - <!--주석 내용--> 태그 ★ - 주석 처리 ※ 스크립트 태그 안 주석 의미
programming HTML - <embed> 태그 - 외부동영상재생 (= embed태그 = 엠베드태그, HTML5추가)
etc HTML - 키보드 단축키 모음 (Window/Mac)
style HTML - <style> 태그 ★ - 요소에 CSS스타일적용 (= style태그 = 스타일태그)
image HTML - <area> 태그 - 이미지맵에서 특정 링크 영역 (= area태그 = 에어리어태그) (HTML…
style HTML - <details> 태그 - 토글 가능한 세부사항(상세사항)을 표시 (= details태그 = 디…
form HTML - <textarea> 태그 ★ - 여러줄 입력창 (= 텍스트입력영역 = 텍스트영역 = textar…
font HTML - <strong> 태그 ★ - 굵은글씨 (= 글자굵기 = 폰트굵게 = strong태그 = 스트롱태…
image HTML - <map> 태그 - 이미지 특정 부분에 링크 (= map태그 = 이미지맵태그) ※ 이미지에 여러…
image HTML - <img> 태그 ★ - 이미지태그 (= img태그) ※ 이미지 일부 자르기, ※ 링크 허버 시,…
form HTML - <input> 태그 ★★★ - 입력창 + 입력버튼 (= input태그 = 인풋태그) ※ 자동포커…
font HTML - <u> 태그 ★ - 밑줄태그 (= u태그 = 유태그 = 언더라인태그) (HTML5재정의)
17/18
목록
찾아주셔서 감사합니다. Since 2012