[英]Why can't we manually open connection of WebSocket object after defining it's delegates?
在javacript中,我一定義conn=new WebSocket('url...');
它將自動嘗試連接。
我必須定義conn.onopen=function(e){...}
才能對其進行處理。 為什么這樣做? 我應該安全嗎? 如果是這樣,怎么辦?
通常,在幾乎所有平台和編程語言中,我們都在運行之前定義委托,對嗎? 那么為什么要這樣計划而不是這樣: conn=new WebSocket('...'); conn.onopen=... conn.open();
conn=new WebSocket('...'); conn.onopen=... conn.open();
之所以起作用,是因為JS是單線程的,並且在當前運行的代碼塊完成其所有工作(包括處理程序的聲明)之前,無法觸發onopen
事件。
至於“為什么”的問題,我不確定。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.