为了账号安全,请及时绑定邮箱和手机立即绑定

二维数组和循环语句的编程结果不对

<script type="text/javascript">
var infos=[['小A','女','21','大一'],
           ['小B','男','23','大三'],
           ['小C','男','24','大四'],
           ['小D','女','21','大一'],
           ['小E','女','22','大四'],
           ['小F','男','21','大一'],
           ['小G','女','22','大二'],
           ['小H','女','20','大三'],
           ['小I','女','20','大一'],
           ['小J','男','20','大三']];
 //第一步把之前的数据写成一个数组的形式,定义变量为 infos

 for(i=0;i<=10;i++){
    if(infos[i][3]=='大一'){
        for(j=0;j<=infos[i].length;j++){ 
            if(infos[j][1]=='女'){
                 document.write(infos[j]+'<br>');
            }
        }
    }

}
 //第一次筛选,找出都是大一的信息
 //第二次筛选,找出都是女生的信息 
</script>

正在回答

3 回答

for(j=0;j<=infos[i][3].length;j++)第二次遍历,你是要在之前筛选好了i的基础上再进行筛选。就要这样写:infos[i][3].length;

另获取结果还有一种更简单的写法:
for(var i=0;i<infos.length;i++)
{    if(infos[i][3]=='大一' && infos[i][1]=='女')
{    document.write(infos[i]+'<br>');  


0 回复 有任何疑惑可以回复我~
#1

慕粉4408527 提问者

非常感谢!
2016-11-29 回复 有任何疑惑可以回复我~

for(var i=0;i<infos.length;i++){
    if(infos[i][3]=='大一'){
       
          if(infos[i][1]=='女'){
                 document.write(infos[i][0]+'<br>');
            }
        }
    }

这样就可以了,但最简单的还是写在一起

0 回复 有任何疑惑可以回复我~

i和j定义的时候要用上“var”,逻辑上的问题,你测试下看看。

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

二维数组和循环语句的编程结果不对

我要回答 关注问题
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号