[Javascript](Web 기술) serviceWorker , PushManager , Web Worker
* PushManager ( in window ) 
https://developer.mozilla.org/ko/docs/Web/API/PushManager 
 푸시 알림 송수신 기능 
getSubscription() 
hasPermission()  
permissionState() 
register()  
registrations()  
subscribe()  
unregister() 
//============ 
* navigator 
https://www.w3schools.com/jsref/obj_navigator.asp 
브라우저에 관한 정보를 제공해주는 객체 
productSub: "20030107" 
vendor: "Google Inc." 
cookieEnabled: true 
appCodeName: "Mozilla" 
appName: "Netscape" 
appVersion: "5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.16 Safari/537.36" 
platform: "Win32" 
product: "Gecko" 
userAgent: "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.16 Safari/537.36" 
language: "ko" 
languages: (2) ["ko", "en-US"] 
onLine: true 
doNotTrack: "1" 
geolocation: Geolocation {} 
userActivation: UserActivation {hasBeenActive: false, isActive: false} 
serviceWorker: ServiceWorkerContainer {ready: Promise, controller: ServiceWorker, oncontrollerchange: null, onmessage: null} 
storage: StorageManager {} 
presentation: Presentation {receiver: null, defaultRequest: null} 
//==================== 
* serviceWorker (in navigator) 
https://developers.google.com/web/fundamentals/primers/service-workers/?hl=ko 
- 브라우저가 백그라운드에서 실행하는 스크립트 
- HTTPS 필요 
캐시(cache)와 상호작용 , 푸시 알림(Push Notification) 보내기, 백그라운드 동기화(Background Sync) 
//============ 
* Web Worker ( Worker in window ) 
http://blog.302chanwoo.com/2016/08/webworker/ 
- Background Thread에서 스크립트를 실행하는 방법 
웹 워커 활용 
– 매우 복잡한 수학적 계산 작업 
– 원격지에 있는 리소스에 대한 액세스 작업(또는 로컬 스토로지를 액세스 하는 경우) 
– 백그라운드에서 오랜시간 작업해야 하는 경우 
– UI 쓰레드에 방해 없이 지속적으로 수행해야 하는 작업 등