在没有任何用户操作的情况下显示javascript输出时,我遇到了一个问题
这就是问题所在:如果一个整数大于1并且只能被1和它本身整除,那么它就是素数。例如,2、3、5和7是素数,但4、6、8和9不是素数。写一个函数,确定一个数是否为素数。 b在确定并打印1到10000之间的所有素数的脚本中使用此函数。在确定找到所有的素数之前,你真的需要测试这10000个数字中的多少?将结果显示在对话框中 这是我的代码:在没有任何用户操作的情况下显示javascript输出时,我遇到了一个问题,javascript,html,Javascript,Html,这就是问题所在:如果一个整数大于1并且只能被1和它本身整除,那么它就是素数。例如,2、3、5和7是素数,但4、6、8和9不是素数。写一个函数,确定一个数是否为素数。 b在确定并打印1到10000之间的所有素数的脚本中使用此函数。在确定找到所有的素数之前,你真的需要测试这10000个数字中的多少?将结果显示在对话框中 这是我的代码: function isPrime(n) { var prime=true; if(n===1 || n===0) {
function isPrime(n)
{
var prime=true;
if(n===1 || n===0)
{
prime= false;
}
if(n==2)
{
prime= true;
}
else
{
for(var i=2;i<n;i++)
{
if(n%i===0)
{
prime= false;
}
}
}
return prime;
}
function printPrimes()
{
for(var i=0; i<=1000; i++)
{
if(isPrime(i)===true)
{
document.writeln("<p>" + i + "</p>");
}
}
}
printPrimes();
这是我的html:
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<h1> Prime numbers between 1 and 1000 are: </h1>
<textarea rows="10" cols="15">
<script src="prime.js" type="text/javascript"> </script>
</textarea>
</body>
</html>
当我在chrome上打开html文件时,只有标题显示,脚本似乎没有运行!
只有脚本标签显示在文本区域显示在文本区域显示在文本区域,我尝试了一百万种方法都没有效果,我该如何在文本区域标签中输出脚本??????
我试过了,但还是不行:
function printPrimes()
{
var str="";
for(var i=0; i<=1000; i++)
{
if(isPrime(i)===true)
{
str+=i +" /n";
}
}
document.getElementById('primes').value=str;
}
printPrimes();
html:
很抱歉重新发布和轻微的编辑,不会再发生,我是新来的堆栈溢出,已经被禁止,如果我的禁令可以取消,我只会问更多的问题,如果我已经做了研究,如果我触及谷底,似乎没有任何工作。我没有注意到编辑帖子,这是一个愚蠢的错误,张贴一个重复,希望向下的投票被删除,im s脚本新手,堆栈溢出新手,我没有意识到我会因为愚蠢的问题被禁止。抱歉您可以使用javascripts document.getElementById获取textarea。当然,您必须为textarea提供一些id。然后更改此文本区域的值。请查看。文本区域中不能有HTML。请尝试以下代码。注意更新的textarea元素、JS引用的位置和值的输出 JS文件
function isPrime(n){
var prime=true;
if(n===1 || n===0)
{
prime= false;
}
if(n==2)
{
prime= true;
}
else
{
for(var i=2;i<n;i++)
{
if(n%i===0)
{
prime= false;
}
}
}
return prime;
}
function printPrimes()
{
for(var i=0; i<=1000; i++)
{
if(isPrime(i)===true)
{
//document.writeln("<p>" + i + "</p>");
document.getElementById('primeNumbers').value = document.getElementById('primeNumbers').value + i + '\n';
}
}
}
printPrimes();
HTML
难道你没有简单地编辑你的,而不是创建一个全新的一个非常小的变化吗?真的很抱歉,我的坏,老实说没有注意到编辑按钮,不会再发生了。对不起,重新发布和轻微的编辑,不会再发生,我是新的堆栈溢出,并已被禁止,如果我的禁令可以取消,我只会问更多的问题,如果我已经做了研究,如果我触及谷底,似乎没有任何工作。我没有注意到编辑帖子,这是一个愚蠢的错误,张贴一个重复,希望向下的投票被删除,im s脚本新手,堆栈溢出新手,我没有意识到我会因为愚蠢的问题被禁止。Sorry该值是否可以是字符串变量?我在考虑用for循环和in-the循环在字符串中构建素数:str+=i+/n;例如,然后在文本区域输出字符串,这样行吗?@user2182981在我链接到作者的答案中,将该值设置为字符串。我尝试过,但不起作用,我在上面重新发布了编辑过的代码。好的,我会尝试一下,然后回复给你。它起作用了:D非常感谢,我犯了一个愚蠢的错误,在我的代码中,script标记位于textarea标记的上方,因此它在创建文本区域之前运行:p?谢谢
function isPrime(n){
var prime=true;
if(n===1 || n===0)
{
prime= false;
}
if(n==2)
{
prime= true;
}
else
{
for(var i=2;i<n;i++)
{
if(n%i===0)
{
prime= false;
}
}
}
return prime;
}
function printPrimes()
{
for(var i=0; i<=1000; i++)
{
if(isPrime(i)===true)
{
//document.writeln("<p>" + i + "</p>");
document.getElementById('primeNumbers').value = document.getElementById('primeNumbers').value + i + '\n';
}
}
}
printPrimes();
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<h1> Prime numbers between 1 and 1000 are: </h1>
<textarea rows="10" cols="15" id="primeNumbers"></textarea>
<script src="prime.js" type="text/javascript"> </script>
</body>
</html>