WorkerGlobalScope

class WorkerGlobalScope

Наследник EventTarget, Global

location

Это свой­ст­во, по­доб­но свой­ст­ву window.location, яв­ля­ет­ся объ­ек­том Location: оно по­зво­ля­ет фо­но­во­му по­то­ку про­ве­рить URL-ад­рес, от­ку­да был за­гру­жен вы­пол­няе­мый в нем сце­на­рий, и вклю­ча­ет в се­бя свой­ст­ва, воз­вра­щаю­щие от­дель­ные час­ти URL.

navigator

Это свой­ст­во, по­доб­но свой­ст­ву window.navigator, яв­ля­ет­ся объ­ек­том Navigator: оно оп­ре­де­ля­ет свой­ст­ва, по­зво­ляю­щие фо­но­во­му по­то­ку оп­ре­де­лить тип бро­узе­ра, в ко­то­ром он вы­пол­ня­ет­ся, и со­стоя­ние под­клю­че­ния к се­ти.

onerror()

Это не­обыч­ный об­ра­бот­чик со­бы­тия: это свой­ст­во боль­ше по­хо­же на свой­ст­во onerror объ­ек­та Window, чем на свой­ст­во onerror объ­ек­та Worker. Ко­гда в фо­но­вом по­то­ ке вы­пол­не­ния по­яв­ля­ет­ся не­об­ра­бо­тан­ное ис­клю­че­ние, бу­дет вы­зва­на эта функ­ция, ес­ли она оп­ре­де­ле­на, с тре­мя стро­ко­вы­ми ар­гу­мен­та­ми, оп­ре­де­ляю­щи­ми со­об­ще­ние об ошиб­ке, URL-ад­рес сце­на­рия и но­мер стро­ки в сце­на­рии. Ес­ли функ­ция вер­нет false, ис­клю­че­ние бу­дет счи­тать­ся об­ра­бо­тан­ным и пре­кра­тит даль­ней­шее рас­про­стра­не­ние. В про­тив­ном слу­чае, ес­ли это свой­ст­во не ус­та­нов­ле­но или об­ра­бот­чик не вер­нул false, ис­клю­че­ние про­дол­жит рас­про­стра­не­ние и вы­зо­вет со­бы­тие «error» в объ­ек­те Worker в ро­ди­тель­ском по­то­ке вы­пол­не­ние.

onmessage()

Ко­гда ро­ди­тель­ский по­ток вы­пол­не­ния вы­зы­ва­ет ме­тод postMessage() объ­ек­та Wor­ker, пред­став­ляю­ще­го дан­ный фо­но­вый по­ток вы­пол­не­ния, в дан­ном объ­ек­те Wor­ker­GlobalScope ге­не­ри­ру­ет­ся со­бы­тие «message». Об­ра­бот­чи­ку это­го со­бы­тия бу­детпе­ре­дан объ­ект MessageEvent, свой­ст­во data ко­то­ро­го хра­нит ко­пию ар­гу­мен­та mes­sa­ge, пе­ре­дан­но­го ро­ди­тель­ским по­то­ком вы­пол­не­ния.

self

Это свой­ст­во ссы­ла­ет­ся на сам гло­баль­ный объ­ект WorkerGlobalScope. Оно по­хо­же на свой­ст­во window объ­ек­та Window в глав­ном по­то­ке вы­пол­не­ния.

clearInterval(long handle)

В точ­но­сти со­от­вет­ст­ву­ет од­но­имен­но­му ме­то­ду объ­ек­та Window.

clearTimeout(long handle)

В точ­но­сти со­от­вет­ст­ву­ет од­но­имен­но­му ме­то­ду объ­ек­та Window.

close()

Пе­ре­во­дит по­ток вы­пол­не­ния в осо­бое со­стоя­ние «за­вер­ше­ния». Ока­зав­шись в этом со­стоя­нии он боль­ше не бу­дет воз­бу­ж­дать со­бы­тия. Сце­на­рий про­дол­жит ра­бо­ту до мо­мен­та воз­вра­та в цикл со­бы­тий фо­но­во­го по­то­ка вы­пол­не­ния, где тут же бу­дет ос­та­нов­лен.

importScripts(string urls...)

Для ка­ж­до­го из ар­гу­мен­тов urls этот ме­тод раз­ре­ша­ет URL-ад­рес от­но­си­тель­но свой­ст­ва location, за­тем за­гру­жа­ет со­дер­жи­мое URL-ад­ре­са и вы­пол­ня­ет его, как про­грамм­ный код на язы­ке Ja­va­Script. Об­ра­ти­те вни­ма­ние, что это син­хрон­ныйме­тод. Он за­гру­жа­ет и вы­пол­ня­ет фай­лы по оче­ре­ди и не воз­вра­ща­ет управ­ле­ние, по­ка не вы­пол­нит все сце­на­рии. (Од­на­ко, ес­ли ка­кой-то сце­на­рий воз­бу­дит ис­клю­че­ние, это ис­клю­че­ние нач­нет рас­про­стра­не­ние и по­ме­ша­ет за­груз­ке и вы­пол­не­нию сле­дую­щих за ним сце­на­ри­ев.)

postMessage(any message[, MessagePort[] ports])

От­прав­ля­ет со­об­ще­ние message (и мас­сив пор­тов, ес­ли ука­зан) по­то­ку вы­пол­не­ния, по­ро­див­ше­му дан­ный фо­но­вый по­ток. Вы­зов это­го ме­то­да ге­не­ри­ру­ет со­бы­тие «message» в объ­ек­те Worker в ро­ди­тель­ском по­то­ке вы­пол­не­ния, об­ра­бот­чи­ку ко­то­ро­го пе­ре­да­ет­ся объ­ект MessageEvent со свой­ст­вом data, со­дер­жа­щим ко­пию ар­гу­мен­та message. Об­ра­ти­те вни­ма­ние, что в фо­но­вом по­то­ке вы­пол­не­ния ме­тод post­Mes­sage() яв­ля­ет­ся гло­баль­ной функ­ци­ей.

setInterval(any handler, [any timeout, ]any args...)

В точ­но­сти со­от­вет­ст­ву­ет од­но­имен­но­му ме­то­ду объ­ек­та Window.

setTimeout(any handler, [any timeout, ]any args...)

В точ­но­сти со­от­вет­ст­ву­ет од­но­имен­но­му ме­то­ду объ­ек­та Window, setTimeout()