Object 內置對象

對象Worker

獨立線程工作對象

繼承關係

#lineWidth: 1.5 #font: Helvetica,sans-Serif #fontSize: 10 #leading: 1.6 #.this: fill=lightgray #.class: fill=white [<class>object|toString();toJSON()] [<class>EventEmitter|new EventEmitter()|EventEmitter|defaultMaxListeners|on();addListener();prependListener();once();prependOnceListener();off();removeListener();removeAllListeners();setMaxListeners();getMaxListeners();listeners();listenerCount();eventNames();emit()] [<this>Worker|new Worker()|onload;onmessage;onerror|postMessage()] [object] <:- [EventEmitter] [EventEmitter] <:- [Worker] EventEmitter new EventEmitter() EventEmitter defaultMaxListeners on() addListener() prependListener() once() prependOnceListener() off() removeListener() removeAllListeners() setMaxListeners() getMaxListeners() listeners() listenerCount() eventNames() emit() Worker new Worker() onload onmessage onerror postMessage() object toString() toJSON()

構造函數

Worker

Worker 對象構造函數

1 2
new Worker(String path, Object opts = {});

調用參數:

  • path: String, 指定Worker 入口腳本,只接受絕對路徑
  • opts: Object, 構造選項,暫未支持

靜態屬性

defaultMaxListeners

Integer, 默認全局最大監聽器數

1
static Integer Worker.defaultMaxListeners;

成員屬性

onload

Function, 查詢和綁定接受load 消息事件,相當於on("load", func);

1
Function Worker.onload;

onmessage

Function, 查詢和綁定接受postMessage 消息事件,相當於on("message", func);

1
Function Worker.onmessage;

onerror

Function, 查詢和綁定接受error 消息事件,相當於on("error", func);

1
Function Worker.onerror;

成員函數

postMessage

向Master 或Worker 發送消息,

1
Worker.postMessage(Value data);

調用參數:

  • data: Value, 指定發送的消息內容

on

綁定一個事件處理函數到對象

1 2
Object Worker.on(String ev, Function func);

調用參數:

  • ev: String, 指定事件的名稱
  • func: Function, 指定事件處理函數

返回結果:

  • Object, 返回事件對象本身,便於鍊式調用

綁定一個事件處理函數到對象

1
Object Worker.on(Object map);

調用參數:

  • map: Object, 指定事件映射關係,對象屬性名稱將作為事件名稱,屬性的值將作為事件處理函數

返回結果:

  • Object, 返回事件對象本身,便於鍊式調用

addListener

綁定一個事件處理函數到對象

1 2
Object Worker.addListener(String ev, Function func);

調用參數:

  • ev: String, 指定事件的名稱
  • func: Function, 指定事件處理函數

返回結果:

  • Object, 返回事件對象本身,便於鍊式調用

綁定一個事件處理函數到對象

1
Object Worker.addListener(Object map);

調用參數:

  • map: Object, 指定事件映射關係,對象屬性名稱將作為事件名稱,屬性的值將作為事件處理函數

返回結果:

  • Object, 返回事件對象本身,便於鍊式調用

prependListener

綁定一個事件處理函數到對象起始

1 2
Object Worker.prependListener(String ev, Function func);

調用參數:

  • ev: String, 指定事件的名稱
  • func: Function, 指定事件處理函數

返回結果:

  • Object, 返回事件對象本身,便於鍊式調用

綁定一個事件處理函數到對象起始

1
Object Worker.prependListener(Object map);

調用參數:

  • map: Object, 指定事件映射關係,對象屬性名稱將作為事件名稱,屬性的值將作為事件處理函數

返回結果:

  • Object, 返回事件對象本身,便於鍊式調用

once

綁定一個一次性事件處理函數到對象,一次性處理函數只會觸發一次

1 2
Object Worker.once(String ev, Function func);

調用參數:

  • ev: String, 指定事件的名稱
  • func: Function, 指定事件處理函數

返回結果:

  • Object, 返回事件對象本身,便於鍊式調用

綁定一個一次性事件處理函數到對象,一次性處理函數只會觸發一次

1
Object Worker.once(Object map);

調用參數:

  • map: Object, 指定事件映射關係,對象屬性名稱將作為事件名稱,屬性的值將作為事件處理函數

返回結果:

  • Object, 返回事件對象本身,便於鍊式調用

prependOnceListener

綁定一個事件處理函數到對象起始

1 2
Object Worker.prependOnceListener(String ev, Function func);

調用參數:

  • ev: String, 指定事件的名稱
  • func: Function, 指定事件處理函數

返回結果:

  • Object, 返回事件對象本身,便於鍊式調用

綁定一個事件處理函數到對象起始

1
Object Worker.prependOnceListener(Object map);

調用參數:

  • map: Object, 指定事件映射關係,對象屬性名稱將作為事件名稱,屬性的值將作為事件處理函數

返回結果:

  • Object, 返回事件對象本身,便於鍊式調用

off

從對象處理隊列中取消指定函數

1 2
Object Worker.off(String ev, Function func);

調用參數:

  • ev: String, 指定事件的名稱
  • func: Function, 指定事件處理函數

返回結果:

  • Object, 返回事件對象本身,便於鍊式調用

取消對象處理隊列中的全部函數

1
Object Worker.off(String ev);

調用參數:

  • ev: String, 指定事件的名稱

返回結果:

  • Object, 返回事件對象本身,便於鍊式調用

從對象處理隊列中取消指定函數

1
Object Worker.off(Object map);

調用參數:

  • map: Object, 指定事件映射關係,對象屬性名稱作為事件名稱,屬性的值作為事件處理函數

返回結果:

  • Object, 返回事件對象本身,便於鍊式調用

removeListener

從對象處理隊列中取消指定函數

1 2
Object Worker.removeListener(String ev, Function func);

調用參數:

  • ev: String, 指定事件的名稱
  • func: Function, 指定事件處理函數

返回結果:

  • Object, 返回事件對象本身,便於鍊式調用

取消對象處理隊列中的全部函數

1
Object Worker.removeListener(String ev);

調用參數:

  • ev: String, 指定事件的名稱

返回結果:

  • Object, 返回事件對象本身,便於鍊式調用

從對象處理隊列中取消指定函數

1
Object Worker.removeListener(Object map);

調用參數:

  • map: Object, 指定事件映射關係,對象屬性名稱作為事件名稱,屬性的值作為事件處理函數

返回結果:

  • Object, 返回事件對象本身,便於鍊式調用

removeAllListeners

從對象處理隊列中取消所有事件的所有監聽器, 如果指定事件,則移除指定事件的所有監聽器。

1
Object Worker.removeAllListeners(String ev);

調用參數:

  • ev: String, 指定事件的名稱

返回結果:

  • Object, 返回事件對象本身,便於鍊式調用

從對象處理隊列中取消所有事件的所有監聽器, 如果指定事件,則移除指定事件的所有監聽器。

1
Object Worker.removeAllListeners(Array evs = []);

調用參數:

  • evs: Array, 指定事件的名稱

返回結果:

  • Object, 返回事件對象本身,便於鍊式調用

setMaxListeners

監聽器的默認限制的數量,僅用於兼容

1
Worker.setMaxListeners(Integer n);

調用參數:

  • n: Integer, 指定事件的數量

getMaxListeners

獲取監聽器的默認限制的數量,僅用於兼容

1
Integer Worker.getMaxListeners();

返回結果:

  • Integer, 返回默認限制數量

listeners

查詢對象指定事件的監聽器數組

1
Array Worker.listeners(String ev);

調用參數:

  • ev: String, 指定事件的名稱

返回結果:

  • Array, 返回指定事件的監聽器數組

listenerCount

查詢對象指定事件的監聽器數量

1
Integer Worker.listenerCount(String ev);

調用參數:

  • ev: String, 指定事件的名稱

返回結果:

  • Integer, 返回指定事件的監聽器數量

查詢對象指定事件的監聽器數量

1 2
Integer Worker.listenerCount(Value o, String ev);

調用參數:

  • o: Value, 指定查詢的對象
  • ev: String, 指定事件的名稱

返回結果:

  • Integer, 返回指定事件的監聽器數量

eventNames

查詢監聽器事件名稱

1
Array Worker.eventNames();

返回結果:

  • Array, 返回事件名稱數組

emit

主動觸發一個事件

1 2
Boolean Worker.emit(String ev, ...args);

調用參數:

  • ev: String, 事件名稱
  • args: ..., 事件參數,將會傳遞給事件處理函數

返回結果:

  • Boolean, 返回事件觸發狀態,有響應事件返回true,否則返回false

toString

返回對象的字符串表示,一般返回"[Native Object]",對象可以根據自己的特性重新實現

1
String Worker.toString();

返回結果:

  • String, 返回對象的字符串表示

toJSON

返回對象的JSON 格式表示,一般返回對象定義的可讀屬性集合

1
Value Worker.toJSON(String key = "");

調用參數:

  • key: String, 未使用

返回結果:

  • Value, 返回包含可JSON 序列化的值