函数递归:
如果大家面试的时候,面试官问你递归知识,面试官对你的要求挺高。(内存管理机制)
公司明文禁止使用递归(非常危险)
递归:
满足以下三个特点就是递归:
- 函数自己调用自己
- 一般情况有参数
- 一般情况下有return
注意:
递归可以解决循环能做的使用事情,有一些循环不容易解决的事情,递归也能轻松完成。
递归,都可以写出来,但是不知道为什么是对的。
方法:
- 首先先找到临界值,既无需计算,获得的值。
- 找这一次和上一次的关系
- 假设当前函数已经可以使用,调用自身计算上一次
实践
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>函数递归</title>
<script>
//计算1~n的和
function sum(n) {
if (n==1){
return 1;
}
return sum(n-1)+n;
}
document.write(sum(100))
</script>
</head>
<body>
</body>
</html>