function reverse(str){
if(str.length <= 1) {
return str;
}
return reverse(str.slice(1)) + str[0];
}
console.log(reverse("two"))
当最后一个
return str
语句在if
语句内部触发时,它返回'o'
。然而,在if
语句外面还有一个额外的 + str[0]
。难道它不应该返回'oo'
而不是'o'
吗?该函数完全正常工作,但当我尝试进行可视化时,我会感到困惑。