5 回答

TA貢獻1836條經(jīng)驗 獲得超13個贊
1.返回數(shù)據(jù)受res Event
的限制,是一個異步操作。因此不用promise
和async await
的話是無法實現(xiàn)的。
2.這個return
是無法直接獲取的。退一步,即使獲取了也還是在http.get
的回調(diào)函數(shù)里面,無法實現(xiàn)題目要求。

TA貢獻1798條經(jīng)驗 獲得超3個贊

TA貢獻1898條經(jīng)驗 獲得超8個贊
1.是否可以在http外聲明一個變量?在res end的時候把返回值賦給 這個變量,然后同樣在http外return這個變量
2.在res.on事件內(nèi)return是不會在調(diào)用的時候拋到函數(shù)的最外層的

TA貢獻1812條經(jīng)驗 獲得超5個贊
可以加個回調(diào)函數(shù),調(diào)用的時候傳進去就行了
function getData(url,callback){
http.get(url,function(res){
var body='';
res.on('data',function(str){
body+=str;
});
res.on('end',function(){
var result=JSON.parse(body);
//將result返回到getData外面
callback && callback(result)
})
});
}
//調(diào)用
getData(url,function(data){
//你的操作
})
添加回答
舉報