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

[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 - minlength 속성 ★ - 입력 가능한 최소 글자 개수 지정 (= minlength속성 =…
attribute HTML - on으로 시작하는 속성에서 2개 이상의 여러 JS함수 실행 방법
etc HTML - 스크린리더기가 읽는 HTML요소 정보값 종류 (= Screen Reader provides th…
form HTML - <input type="button"> 태그 - 버튼 모양 인풋 (= 인풋버튼타입/버튼타입인풋/…
form HTML - <input type="checkbox"> 태그 - 체크박스 모양 INPUT (= 인풋체크박스타…
form HTML - <input type="color"> 태그 - 색상값(색깔값) 선택 입력 (= 인풋컬러타입/컬러…
form HTML - <input type="date"> 태그 - 연월일(년월일) 입력 (= 인풋데이트타입/데이트타입…
form HTML - <input type="datetime-local"> 태그 - 년월일시분 입력 (= 인풋데이트타…
form HTML - <input type="email"> 태그 - 이메일 입력 (= 인풋이메일타입/이메일타입인풋/이…
form HTML - <input type="file"> 태그 - 업로드 할 파일 선택 (= 파일첨부/첨부파일 입력필…
form HTML - <input type="hidden"> 태그 - 숨겨진 입력 필드 지정 (= 사용자 몰래 입력값…
form HTML - <input type="image"> 태그 - 이미지로 된 submit 버튼 (= 인풋이미지타입…
form HTML - <input type="month"> 태그 - 연월(년월) 입력 (= 인풋먼스타입/먼스타입인풋/…
form HTML - <input type="number"> 태그 - 숫자 입력 (= 인풋넘버타이/넘버타입인풋/넘버인…
form HTML - <input type="password"> 태그 - 패스워드 입력 (= 비밀번호 입력 = 인풋패…
form HTML - <input type="radio"> 태그 - 오직 1개의 요소만 선택 (= 인풋라디오타입/라디…
form HTML - <input type="range"> 태그 - 지정범위 내 입력값 지정 (= 인풋레인지타입/레인…
form HTML - <input type="reset"> 태그 - 입력창 초기화/재설정 (= 입력한 폼데이터 비우기…
form HTML - <input type="search"> 태그 - 검색어 입력 (= 인풋서치타입/서치타입인풋/서치…
form HTML - <input type="submit"> 태그 - 서버로 데이터 제출/전송 (= 인풋타입서브미트/…
17/18
목록
찾아주셔서 감사합니다. Since 2012