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

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

 


 


분류 제목
attribute HTML - for 속성 - <label>/<output> 관련 요소 ID 바인딩 지정 (= for속성 = …
attribute HTML - ontimeupdate 속성 - (오디오/비디오) 재생위치 변경 시 실행 (= ontimeupd…
attribute HTML - open 속성 - <details> 태그 안 세부내용 표시함을 기본으로 지정 (= open속성 …
attribute HTML - border 속성 - (HTML5 지원 X) 테두리 너비 지정 (= border속성 = 보더속성…
attribute HTML - onwheel 속성 - 마우스휠/터치패드휠 움직일 때 실행 (= onwheel속성 = 온휠속성…
attribute HTML - value 속성 ★★★ - 요소값 지정 (= value속성 = 밸류속성) ※ 초기값/기본값/현재…
attribute HTML - contenteditable 속성 - 요소 내용 수정 가능 여부 지정 (= contentedit…
attribute HTML - formtarget 속성 - 폼데이터 전달할 폼 지정 (= formtarget속성 = 폼타겟속성…
attribute HTML - dirname 속성 - input/textarea 요소의 텍스트 방향 지정 (= dirname속…
attribute HTML - class 속성 ★★★ - 클래스명 선택자 지정 (= class속성 = 클래스속성)
attribute HTML - onscroll 속성 ★ - 마우스 스크롤 이벤트 시 실행 (= onscroll속성 = 온스크롤…
attribute HTML - bgcolor 속성 - (HTML5 지원 X) 배경색 지정 (= bgcolor속성 = 비지컬러속…
attribute HTML - onpaste 속성 - 사용자가 요소에 내용 붙여넣기 시 실행 (= onpaste속성 = 온패스…
attribute HTML - usemap 속성 - 이미지를 이미지맵으로 지정 (= usemap속성 = 유즈맵속성|유스맵속성)
attribute HTML - data 속성 - <object> 태그의 리소스 URL 주소 지정 (= data속성 = 데이터속…
attribute HTML - onfocus 속성 ★ - 포커스 설정 시 실행 (= onfocus속성 = 온포커스속성) ※ o…
form HTML - <input type="range"> 태그 - 지정범위 내 입력값 지정 (= 인풋레인지타입/레인…
attribute HTML - multiple 속성 ★ - 복수 (파일업로드/이메일입력/옵션선택) 허용 (= multiple속…
attribute HTML - target 속성 ★ - (링크된 문서 열 곳 / 폼 제출할 곳) 지정 (= target속성 =…
attribute HTML - maxlength 속성 ★ - 입력 가능한 최대 글자 개수 지정 (= maxlength속성 = …
8/18
목록
찾아주셔서 감사합니다. Since 2012