рдУрдкреЗрд░рд╛ рдореЗрдВ importScripts () рдХреЛ рд╣рд▓ рдХрд░рдирд╛

рд╕рднреА рдХреЛ рд╢реБрдн рджрд┐рди! рд╡рд╕реНрддреБрддрдГ рдЖрдЬ, рдЬрдм рд╡реЗрдм рд╡рд░реНрдХрд░реНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рддреЛ рдореБрдЭреЗ рдЗрдВрдкреЛрд░реНрдЯрд╕реНрдХреНрд░рд┐рдкреНрд╢рдВрд╕ () рдлрд╝рдВрдХреНрд╢рди рдореЗрдВ рдПрдХ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░рдирд╛ рдкрдбрд╝рд╛, рдЬреЛ рдХрд┐ рдУрдкреЗрд░рд╛ (рд╕рдВрд╕реНрдХрд░рдг 11.61 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП) рдЕрдкрдиреЗ рдХреБрдЫ рдЖрдВрддрд░рд┐рдХ рдХрд╛рд░рдгреЛрдВ рд╕реЗ рд╣реИ, рдЬрдм рд╡рд░реНрдХрд░ рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЛ рд░реА-рдХреНрд░рд┐рдПрдЯ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЗрд╕рдХреЗ рдЕрдВрджрд░ рдЗрдВрдкреЛрд░реНрдЯрд╕реНрдХреНрд░рд┐рдкреНрдЯ () рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рд╕реЗ рдЗрдирдХрд╛рд░ рдХрд░рддреЗ рд╣реИрдВ (рд╕рдорд╕реНрдпрд╛ рдЙрддреНрдкрдиреНрди рд╣реЛрддреА рд╣реИ) рдХреЗрд╡рд▓ рдУрдкреЗрд░рд╛ рдореЗрдВ, рдЕрдиреНрдп рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдЙрдЪрд┐рдд рд░реВрдк рд╕реЗ рд╡реНрдпрд╡рд╣рд╛рд░ рдХрд░рддреЗ рд╣реИрдВ)ред


рдПрдХ рдЫреЛрдЯрд╛ рд╕рд╛ рдЙрджрд╛рд╣рд░рдг:

var str = "http://" + document.domain + "/classes/js/workers/worker.js"; var worker = new Worker(str); worker.onerror = function(e) { alert([ 'ERROR: Line ', e.lineno, ' in ', e.filename, ': ', e.message].join('')); } worker.onmessage = function (obj) { alert(obj['data']); } worker.postMessage(); 


рд╡рд░реНрдХрд░ рдХреЛрдб (рдорд╛рди рд▓реАрдЬрд┐рдП рдХрд┐ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдХреБрдЫ рд╡реИрд░рд┐рдПрдмрд▓ рдореЗрдВ рдПрдХ рд╡реИрд╢реНрд╡рд┐рдХ рдЪрд░ рдкрд░реАрдХреНрд╖рдг рд╣реИ):
 onmessage = function () { importScripts("/classes/js/some.js"); postMessage(test); } 


рдкрд╣рд▓реА рдХреЙрд▓ рдкрд░ рдЙрдкрд░реЛрдХреНрдд рдХреЛрдб, рд╡рд┐рд╢реНрд╡рд╛рд╕рдкреВрд░реНрд╡рдХ рдкрд░реАрдХреНрд╖рдг рдЪрд░ рдХреА рд╕рд╛рдордЧреНрд░реА рдХреЛ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░реЗрдЧрд╛, рд▓реЗрдХрд┐рди рдЕрдкреЗрдХреНрд╖рд┐рдд рдорд╛рди рдХреЗ рдмрдЬрд╛рдп рдПрдХ рджреЛрд╣рд░рд╛рдпрд╛ рдХреЙрд▓ рдПрдХ рддреНрд░реБрдЯрд┐ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░реЗрдЧрд╛ рдХрд┐ рдкрд░реАрдХреНрд╖рдг рдЪрд░ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдирд╣реАрдВ рд╣реИред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХрд┐рди рдХрд╛рд░рдгреЛрдВ рд╕реЗ рдЖрдпрд╛рддреЛрдВ рдХреЛ рдмрд╛рд░-рдмрд╛рд░ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдХрдИ рдШрдВрдЯреЛрдВ рддрдХ рд╕рдВрдШрд░реНрд╖ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдореБрдЭреЗ рдПрдХ рд╕рдорд╛рдзрд╛рди рдорд┐рд▓рд╛ред рдпрд╣ рд╕рд░рд▓ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдУрдкреЗрд░рд╛ рдирдИ рдмрдирд╛рдИ рдЧрдИ рд╡рд╕реНрддреБ рдореЗрдВ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдлрд┐рд░ рд╕реЗ рдЖрдпрд╛рдд рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реИ, рд╣рдо рдПрдХ рдирдИ рд╡рд╕реНрддреБ рдирд╣реАрдВ рдмрдирд╛рдПрдВрдЧреЗ, рд╣рдо рдХреЗрд╡рд▓ рдПрдХ рд╣реА рдмрдирд╛рдПрдВрдЧреЗ рдФрд░ рдЗрд╕реЗ рд╡реИрд╢реНрд╡рд┐рдХ рдмрдирд╛рдПрдВрдЧреЗ рдФрд░ рднрд╡рд┐рд╖реНрдп рдореЗрдВ рд╣рдо рдЗрд╕рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╕рдм рдХреБрдЫ рднреЗрдЬ рджреЗрдВрдЧреЗред рдкрд┐рдЫрд▓реЗ рдХреЛрдб рдХреЛ рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рдЕрдкрдЧреНрд░реЗрдб рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ:
 if(!('worker' in window)) { var str = "http://" + document.domain + "/classes/js/workers/worker.js"; worker = new Worker(str); worker.onerror = function(e) { alert([ 'ERROR: Line ', e.lineno, ' in ', e.filename, ': ', e.message].join('')); } } worker.onmessage = function (obj) { alert(obj['data']); } worker.postMessage(); 

рдЙрд╕реА рд╕рдордп, рдСрдирдореЗрд╕реЗрдЬ рд╣реИрдВрдбрд▓рд░ рдХреЛ рд╢рд░реНрдд рдХреЗ рдЕрдВрджрд░ рдирд╣реАрдВ рд░рдЦрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рдХреНрдпреЛрдВрдХрд┐ рдпрджрд┐ рдлрд╝рдВрдХреНрд╢рди рдореЗрдВ рдЖрдиреЗ рд╡рд╛рд▓реЗ рдЪрд░ рдЗрд╕рдХреЗ рдЕрдВрджрд░ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВ, рддреЛ рдкрд╣рд▓реА рдХреЙрд▓ рдХреЗ рдЪрд░ рдХреЗ рд▓рд┐рдП рдПрдХ рд╢реЙрд░реНрдЯ рд╕рд░реНрдХрд┐рдЯ рдмрдирд╛рдпрд╛ рдЬрд╛рдПрдЧрд╛, рдФрд░ рдмрд╛рдж рд╡рд╛рд▓реЗ рдХреЛ рдЕрдирджреЗрдЦрд╛ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред
рдореБрдЭреЗ рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдЗрдВрдкреЛрд░реНрдЯрд╕реНрдХреНрд░рд┐рдкреНрд╕ рдмрдЧ рдЬрд▓реНрдж рд╣реА рдареАрдХ рд╣реЛ рдЬрд╛рдПрдЧрд╛, рдЖрдЦрд┐рд░рдХрд╛рд░, рддрдХрдиреАрдХ рдЕрднреА рднреА рддрд╛рдЬрд╛ рд╣реИ рдФрд░ рдХрднреА-рдХрднреА рдЖрдк рдмреАрдЯрд╛ рдкрд░реАрдХреНрд╖рдХ рдХреА рддрд░рд╣ рдорд╣рд╕реВрд╕ рдХрд░рддреЗ рд╣реИрдВ, рди рдХрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ ...

рдкреАрдПрд╕ рдореБрдЭреЗ рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдиреЛрдЯ рдХрд┐рд╕реА рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧреА рд╣реЛрдЧрд╛

Source: https://habr.com/ru/post/In138847/


All Articles