javascript - 使用递归创建倒计时 | FreeCodeCamp 递归问题
问题描述
var a=[];
// Only change code below this line
function countdown(n){
if(n>=1){
countdown(n-1);
console.log(n);
a.push(n);
return a;
}
else{
return [];
}
}
console.log(countdown(5));
这里想知道回忆倒计时功能后为什么n打印成1,2,3,4,5的样子?应该是5,4,3,2,1?
解决方案
console.log(n);
切换and的顺序,countdown(n-1);
您将获得预期的行为。
var a=[];
// Only change code below this line
function countdown(n){
if(n>=1){
console.log(n);
countdown(n-1);
a.unshift(n);
return a;
}
else{
return [];
}
}
console.log(countdown(5));
推荐阅读
- assembly - MASM:如何解决错误“不允许立即操作数”
- azure-devops - Odata 查询以从 azure 分析服务获取基于标记的测试用例计数
- tensorflow - 导入张量流
- python - ModuleNotFoundError:没有名为“azure”的模块
- java - 从文件中获取 WEB_URL
- android - 如何处理 BillingClient.onBillingServiceDisconnected()?
- javascript - 我需要一种方法,我的机器人可以用 8ball 命令之类的随机响应进行响应
- c++ - 如何在 C++ 中实现“反向应用功能”?
- java - 如何添加多个反应以嵌入 Discord JDA
- powershell - 当我尝试通过 Get-scheduleTask 获取任务时显示错误