累加和1
<body> <script> // 求 1+2+...+n 的累加和 // 法一 function heOne(n) { let result = n; (n>0) && (result += heOne(n-1)) return result } console.log(heOne(9)); </script> <script> // 法二 function add(n){ var sum=0; for(i=1;i<=n;i++){ sum=sum+i; } return sum; } console.log(add(10)); </script> </body>
累加和2
<body> <script> // 求 1+(1+2)+(1+2+3)+...+(1+2+...+n)累加和 function heTwo(n){ if (n === 1){ return 1; }else{ return heTwo(n - 1) + n; } } console.log(heTwo(6)); </script> </body>
求斐波那契数列第N项的值
<body> <script> // 【案例】求斐波那契数列第N项的值 function recursion(num){ if(num < 0){ return'输入的数字不能小于0'; }else if (num == 0){ return 0; }else if (num == 1){ return 1; }else if (num > 1){ return recursion(num - 1) + recursion(num - 2); } } console.log(recursion(10)); </script> </body>
案例
<body> <script> // 动手实践:获取指定年份的2月份的天数 //用户输入年龄,输出当年2月份的天数 function feb(){ var year = prompt('请输入年份:'); if (leapYear(year)){ alert('当前的年份是闰年,2月份有29天'); }else{ alert('当年年份是平年,2月份有28天'); } } feb(); //判断是否为闰年的函数 function leapYear(year1){ var flag = false; if (year1 % 4 == 0 && year1 % 100 != 0 || year1 % 400 == 0){ flag = true; } return flag; } </script> </body>
最大值
<body> <script> // 利用函数求数组 [5,2,99,101,67,77] 中的最大数值。 function getArrMax(arr){ var max =arr[0]; for(var i=1;i<arr.length;i++){ if(arr[i]>max){ max=arr[i]; } } return max; } getArrMax([5,2,99,101,67,77]); var re = getArrMax([5,2,99,101,67,77]); console.log(re); </script> </body>