如何让区间质数合数查询JS程序的输出全部显示在浏览器?
解决方法
要把质数和合数统一显示在浏览器页面,只需调整输出逻辑,同时修正代码里的ID大小写问题,具体实现如下:
关键调整点
- 页面中准备好显示质数、合数的容器,分开展示更清晰
- 在JS里分别收集质数、合数的内容,循环结束后一次性更新页面,避免频繁操作DOM影响性能
- 修正原代码的ID大小写错误:原HTML里的ID是
Prime(大写P),但JS里调用的是prime(小写p),大小写不匹配会导致DOM操作失效
修改后的完整代码
<!-- 页面显示容器 --> <p id="primeArea">质数:</p> <p id="compositeArea">合数:</p> <script> const lowerNumber = parseInt(prompt("Enter the lower number : ")); const higherNumber = parseInt(prompt("Enter the higher number : ")); let i, j; let primeContent = ""; let compositeContent = ""; for (i = lowerNumber; i <= higherNumber; i++) { let flag = 0; for (j = 2; j < i; j++) { if (i % j === 0) { flag = 1; break; } } if (i > 1) { if (flag === 0) { // 收集质数内容,替代原console.log primeContent += i + "<br>"; } else { // 收集合数内容 compositeContent += i + "<br>"; } } } // 循环结束后统一更新页面 document.getElementById("primeArea").innerHTML += primeContent; document.getElementById("compositeArea").innerHTML += compositeContent; </script>
补充说明
- 我把变量名改成了驼峰式,比如
lowerNumber代替lowernumber,提升代码可读性 - 如果想把质数和合数放在同一个容器里,只需合并两个内容字符串,插入到同一个DOM元素即可
内容的提问来源于stack exchange,提问作者Rahul
相关产品推荐
相关产品推荐

