学艺不精焦头烂额代码是多层回调的,例子代码如下var arr=[];let A = ()=>{ //逻辑处理
B(function(){
C(function(){
let a = 10;
arr.push(a);
})
}) return arr
}期望得到函数c里的arr作为函数A的返回值,但是因为异步的原因,会先执行return语句,返回undefined let data = A();请各位大大不吝赐教
2 回答
鸿蒙传说
TA贡献1865条经验 获得超7个赞
了解下Promise
let A =new Promise((resolve,reject) => { function B(function(){ resolve(); }) }).then(()=>{function C(function(){ let a = 10; arr.push(a); }) })
POPMUISE
TA贡献1765条经验 获得超5个赞
var arr=[];let A = ()=>{ //逻辑处理 return B(function(){ return C(function(){ let a = 10; arr.push(a); return arr }) }) }
添加回答
举报
0/150
提交
取消