这个函数怎么调用不对呢?结果是"1NaNNaNNaN"该怎么调用才对呢
3 回答
已采纳
李晓健
TA贡献1036条经验 获得超461个赞
<!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>xxx</title> <script> var result =1; function fact(num) { if(num <= 1) { return 1; } else { return num * fact(num - 1); } } function fact2(m){ var result = fact(m); document.write(result); } </script> </head> <body> <input type="button" onclick="fact2(5)" value="aaaaa"> </body> </html>
你可以这样试一下
不劳虎
TA贡献2条经验 获得超0个赞
学习了,大受启发,还可以简化成这样
<!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>xxx</title> <script> function fact(num) { if(num <= 1) { return 1; } else { return num * fact(num - 1); } } </script> </head> <body> <input type="button" onclick="document.write(fact(5))" value="aaaaa"> </body> </html>
省了一个函数和一个全程变量
不劳虎
TA贡献2条经验 获得超0个赞
<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>div标签</title>
<script type="text/javascript">
function fact(m)
{
if (m<=1)
{
return(1);
}
else
{
return(m*fact(m-1));
}
}
</script>
</head>
<body>
<script>
document.write(fact(5));
</script>
</body>
</html>
添加回答
举报
0/150
提交
取消