Javascript 通过用户提示查找数字的阶乘
我一直在努力解决这个挂起浏览器的输出问题。当我运行以下代码时,它运行良好Javascript 通过用户提示查找数字的阶乘,javascript,html,Javascript,Html,我一直在努力解决这个挂起浏览器的输出问题。当我运行以下代码时,它运行良好 <!doctype html> <html> <head> <meta charset="utf-8"> <title>Untitled Document</title> </head> <body> <script type="text/javascript"> var input = 5; for(var i=1
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Untitled Document</title>
</head>
<body>
<script type="text/javascript">
var input = 5;
for(var i=1;i< 5;i++){
input = i*input;
}
document.write(input);
</script>
</body>
</html>
无标题文件
var输入=5;
对于(变量i=1;i<5;i++){
输入=i*输入;
}
文件编写(输入);
但这会挂起浏览器,我最后不得不停止它。我在这段代码中找不到任何bug或错误
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Untitled Document</title>
</head>
<body>
<script type="text/javascript">
var input = prompt("Enter the number to get factorial of: ");
var result = input;
for(var i=1;i < input;i++){
result = i * result;
}
document.write(result);
</script>
</body>
</html>
无标题文件
var input=prompt(“输入数字以获得因子:”);
var结果=输入;
对于(变量i=1;i
input=i*input代码>增加input
因此i
总是false
。试一下
var input = parseInt(prompt("Enter the number to get factorial of: "));
var result = input;
for(var i=1;i < input;i++){
result = i * result;
}
document.write(result);
var input=parseInt(提示(“输入数字以获取因子:”);
var结果=输入;
对于(变量i=1;i
新文件
函数事实(num)
{
var x=parseInt(num);
如果(x>0)
x=x*事实(x-1);
警报(x);
}
输入号码:
虽然此代码可以回答问题,但提供有关如何和/或为什么解决问题的附加上下文将提高答案的长期价值。
var y = prompt("type number ");
var x = input;
function fact(x) {
if(x==0) {
return 1;
}
return x * fact(x-1);
}
function run(number) {
alert(fact(parseInt(number, 10)));
}
run(x);
<html>
<head>
<title> New Document </title>
<script type="text/javascript">
function fact(num)
{
var x=parseInt(num);
if(x>0)
x=x* fact(x-1);
alert(x);
}</script>
</head>
<body>
<form name="f1">
Enter the Number :<input type="text" length="8" name="txt1"><br>
<input type="button" value="Find factiorial" onclick="fact(txt1.value)">
</form>
</body>