这个函数怎么调用不对呢?结果是"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
提交
取消
