gpt4 book ai didi

javascript - 第二个函数有语法吗?

转载 作者:行者123 更新时间:2023-11-28 12:25:58 25 4
gpt4 key购买 nike

除非我完全注释掉第二个函数(findPalindromes()),否则下面的代码都不会运行,而且我一生都无法弄清楚为什么。有人可以帮我查找其中的错误吗?

这段代码应该找到一堆素数,然后列出也是回文的素数

<html>
<head>
<script>
var low;
var high;
var primes=[];
var pprimes=[];
var div1;
var div2;

function findPrimes(){
low=0;
high=999;

div1=document.getElementById("primes");
if(low<0||high<=0||high<=low){
return;
}

for(var i=low; i<high; i++){
if(i<=2&&i!=0){
primes[primes.length]=i;

continue;
}

var isPrime;
for(var j=2; j<i;j+=2){
isPrime=true;
if((i%j)==0){
isPrime=false;
break;
}
if(j==2)
j++;
}
if(isPrime==true)
primes[primes.length]=i;
}

for(var i=0; i<primes.length; i++)
div1.innerHTML+=(primes[i]+" ");

findPalindromes();
}

function findPalindromes(){
for(var i=0; i<primes.length; i++){
if(primes[i]<10)
continue;

str=primes[i].toString();
isPal=true;
for(int j=0;j<str.length;j++){
if(str.charAt(j)!=str.charAt(str.length-j){
isPal=false;
break;
}
if((str.length-j)<=1)
break;
}
if(isPal==true)
pprimes[pprimes.length]=primes[i];
}
div2=document.getElementById("pprimes");

for(var i=0; i<pprimes.length;i++){
div2.innerHTML+=(pprimes[i]+" ");
}
}

</script>
</head>
<body onload="findPrimes()">
<div id="primes"></div>
<div id="pprimes"></div>
</body>

最佳答案

Javascript 不使用强类型变量,它是弱类型的,没有 int,您可以通过打开控制台发现它

for(int j=0;j<str.length;j++){

应该是

for(var j=0;j<str.length;j++){

相同的 for 循环缺少 charAt 的右括号

if (str.charAt(j) != str.charAt(str.length - j ) {

应该是

if (str.charAt(j) != str.charAt(str.length - j) ) {

关于javascript - 第二个函数有语法吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28572924/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com