长阳&大玄 2022-09-29 23:16 采纳率: 75%
浏览 19
已结题

最后一个document.write("最终k值:"+k+"<br/>");显示不出来

问题遇到的现象和发生背景

题目如下:统计在这些单词:“America”、“Greece”、“Britain”、“Canada”、
“China”、“Egypt”中包含“a”或“A”的字符串的个数。
下面是我写的代码:



<!DOCTYPE html>
<html lang="en">
    
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <script type="text/javascript">
        var ziMu= new Array("America", "Greece", "Britain","Canada","China","Egypt");
       var n=ziMu.length;
       var k=0;
       document.write("初始k值:"+k+"
"
);//这里的k可以显示出来 for(var i=0;i<=n;i++){ var fz=ziMu[i]; var m=fz.length; document.write(ziMu[i]+","+m+","); for(var j=0;j<m;j++){ if(fz[j]=='a'||fz[j]=='A'){ k++; } } document.write("k值:"+k+"
"
);//这里的k可以显示出来 } document.write("最终k值:"+k+"
"
);//这里的k却不能显示出来!!!为什么呢???
</script> </body> </html>


###### 最终k的结果,也就是第27行的



```javascript
document.write("最终k值:"+k+"
"
);

显示不出来。
请问这是为什么呢?

  • 写回答

2条回答 默认 最新

  • MAXLZ 2022-09-29 23:28
    关注

    因为你for循环结束条件是i<=n,如果i===n时,i越界,读取fz.length时报错了,所以不会执行最后的document.write

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 10月9日
  • 已采纳回答 10月1日
  • 创建了问题 9月29日

悬赏问题

  • ¥15 unity第一人称射击小游戏,有demo,在原脚本的基础上进行修改以达到要求
  • ¥15 买了个传感器,根据商家发的代码和步骤使用但是代码报错了不会改,有没有人可以看看
  • ¥15 关于#Java#的问题,如何解决?
  • ¥15 加热介质是液体,换热器壳侧导热系数和总的导热系数怎么算
  • ¥100 嵌入式系统基于PIC16F882和热敏电阻的数字温度计
  • ¥15 cmd cl 0x000007b
  • ¥20 BAPI_PR_CHANGE how to add account assignment information for service line
  • ¥500 火焰左右视图、视差(基于双目相机)
  • ¥100 set_link_state
  • ¥15 虚幻5 UE美术毛发渲染