bundles/org.eclipse.orion.client.javascript/web/javascript/plugins/javascriptPlugin.js
function WrappedWorker(script, onMessage, onError) {
		var wUrl = new URL(script, window.location.href);
		wUrl = new URL(urlModifier(wUrl.href));
		wUrl.query.set("worker-language",  ((navigator.languages && navigator.languages[0]) ||
			navigator.language || navigator.userLanguage || 'root').toLowerCase()); //$NON-NLS-1$
		this.worker = new Worker(wUrl.href);
		this.worker.onmessage = onMessage.bind(this);
		this.worker.onerror = onError.bind(this);
		this.worker.postMessage({
			request: "start_worker"
		});
		this.messageId = 0;
		this.callbacks = Object.create(null);
	}
function WrappedWorker(script, onMessage, onError) {
		var wUrl = new URL(script, window.location.href);
		wUrl = new URL(urlModifier(wUrl.href));
		wUrl.query.set("worker-language",  ((navigator.languages && navigator.languages[0]) ||
			navigator.language || navigator.userLanguage || 'root').toLowerCase()); //$NON-NLS-1$
		this.worker = new Worker(wUrl.href);
		this.worker.onmessage = onMessage.bind(this);
		this.worker.onerror = onError.bind(this);
		this.worker.postMessage({
			request: "start_worker"
		});
		this.messageId = 0;
		this.callbacks = Object.create(null);
	}
function WrappedWorker ( script , onMessage , onError ) { var wUrl = new URL ( script , window . location . href ) ; wUrl = new URL ( urlModifier ( wUrl . href ) ) ; wUrl . query . set ( "worker-language" , ( ( navigator . languages && navigator . languages [ 0 ] ) || navigator . language || navigator . userLanguage || 'root' ) . toLowerCase ( ) ) ; //$NON-NLS-1$ this . worker = new Worker ( wUrl . href ) ; this . worker . onmessage = onMessage . bind ( this ) ; this . worker . onerror = onError . bind ( this ) ; this . worker . postMessage ( { request : "start_worker" } ) ; this . messageId = 0 ; this . callbacks = Object . create ( null ) ; }
for add and removes only 
@description Make a new worker
for add and removes only