gpt4 book ai didi

javascript - 递归函数返回后的函数调用

转载 作者:行者123 更新时间:2023-11-28 18:49:22 25 4
gpt4 key购买 nike

我在某些服务类中有一个递归函数来删除一些 json 元素,一旦删除它们,我就必须调用为更新注册的回调。

我的代码 -

    var trimTree = function(){
removeScripts(tree.children).then(function(){
angular.forEach(callbacks, function(callback){
//console.log(callback);
console.log("Calling callbacks");
callback();
});
});
}
function removeScripts(nodes){
for(i=0;i<nodes.length;i++){
if(nodes[i].type == 'script'){
return nodes.splice(i, 1);
}else{
return removeScripts(nodes[i]);
}
}
}

但它给了我错误 TypeError: Cannot read property 'then' of undefined

谢谢

最佳答案

您假设 removeScripts() 返回 Promise,但事实并非如此。 removeScripts() 是同步的,所以通常只需在其后面添加语句即可。

关于javascript - 递归函数返回后的函数调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34740935/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com