gpt4 book ai didi

javascript - 第二次+迭代后无返回值

转载 作者:行者123 更新时间:2023-12-02 19:49:21 24 4
gpt4 key购买 nike

我不知道这有什么问题:

      var get_depth = function(item, depth) {
if(item.parent_id !== null) {
get_depth(get_item_by_id(item.parent_id),depth+1);
} else {
alert ("return: " + depth);
return depth;
}
};

警报消息总是抛出正确的深度,但我想要存储值的变量仅接受一次迭代(返回值 = 1),在两次或多次迭代之后,我的变量的值未定义。我不明白。

最佳答案

您错过了返回。

 var get_depth = function(item, depth) {
if(item.parent_id !== null) {
return get_depth(get_item_by_id(item.parent_id),depth+1);
} else {
alert ("return: " + depth);
return depth;
}
};

为什么不使用这种语法?我发现更容易通过:

function get_depth(item, depth) {
if(item.parent_id !== null) {
return get_depth(get_item_by_id(item.parent_id),depth+1);
} else {
alert ("return: " + depth);
return depth;
}
}

关于javascript - 第二次+迭代后无返回值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9496870/

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