js代码:
let tempStr = '从前'
let a = '有座山'
let b = '山里'
let c = '有座庙'
const Recursion = num => {
tempStr = `${tempStr}-${num}${a}`
console.log(tempStr, num)
if (!num) {
tempStr = `${tempStr}-${num}${b}`
} else {
Recursion(--num) // 递归调用,*此处不能用num--,否则函数调用一直是Recursion(2)导致死循环*
}
tempStr = `${tempStr}-${num}${c}`
console.log(tempStr, num)
return tempStr
}
console.log(Recursion(2))
输出情况:(不仔细分析,很容易得出错误的答案)