亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁技術文章
文章詳情頁

html5 - javascript異步編程書中遇到的問題?

瀏覽:86日期:2022-12-14 13:17:51

問題描述

再看JavaScript異步編程這本書,然后看到了一段代碼

var webSocketCache = {};function openWebSocket(serverAddress, callback) { var socket; if (serverAddress in webSocketCache) {socket = webSocketCache[serverAddress];if (socket.readyState === WebSocket.OPEN) { callback();} else { socket.onopen = _.compose(callback, socket.onopen);}; } else {socket = new WebSocket(serverAddress);webSocketCache[serverAddress] = socket;socket.onopen = callback; }; return socket;};

書中說

var socket=openWebSocket(url,function(){ socket.send(’Hello,server!’); });

這樣會使代碼崩潰,不解。。在返回值之前調用回調函數(shù)為什么會使代碼崩潰。希望大大們能幫我解釋解釋

問題解答

回答1:

在返回之前回調函數(shù)就有可能被執(zhí)行了,這個時候的socket還沒有賦值

可以給callback傳一個參數(shù)來避免這種情況

回答2:

你url 定義了么- -

回答3:

const func = function (callback) { callback(); return 100;};const x = func(() => { console.log(x); //此處將打印 undefined;});console.log(x); //此處打印 100

這樣解釋不知道你能否明白?

標簽: JavaScript
相關文章:
主站蜘蛛池模板: 精品视频自拍 | 欧美操大逼视频 | 国产热视频 | 一区卡二区卡三区卡视频 | 草草线禁成18年在线视频 | 超污视频网站 | 国产床上视频 | 中文字幕日韩国产 | 1000部未满岁18在线观看污 | 国产高清在线a视频大全凹凸 | 欧美成人一区二区三区不卡视频 | 热99re久久精品精品免费 | 国产原创剧情在线 | 日本r级在线中文在线播放 日本tv欧美tv天堂 | 免费看黄大全 | 日韩一区二区免费视频 | 国产亚洲欧美精品久久久 | 91精品国产自产91精品 | 国产狂喷白浆在线观看视频 | 黄黄视频免费看 | 日韩在线二区 | 99久久精品费精品国产一区二区 | 五月天婷色 | 伊人青青视频 | 男人粗大一出一进女人下面视频 | 成本人h片3d动漫网站在线看 | 毛片一区二区三区 | 九九久久99综合一区二区 | 区二区三区四区免费视频 | 中文字幕欧美亚洲 | 欧美日本一本 | 国产精品一区在线免费观看 | 日本aaa大片 | 精品不卡 | 欧美精品久久一区二区三区 | 国产精品剧情原创麻豆国产 | 久久精品嫩草影院免费看 | 五月四房播 | 国语自产免费精品视频一区二区 | 久久久久久99精品 | 午夜羞羞视频在线观看 |