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

为什么更改筛选条件就不输出结果了?

<!DOCTYPE  HTML>
<html >
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>流程控制语句</title>
<script type="text/javascript">

 //第一步把之前的数据写成一个数组的形式,定义变量为 infos
 var infos=[    ['小A','女',21,'大一'],  
                ['小B','男',23,'大三'],
                ['小C','男',24,'大四'],
                ['小D','女',21,'大一'],
                ['小E','女',22,'大四'],
                ['小F','男',21,'大一'],
                ['小G','女',22,'大二'],
                ['小H','女',20,'大三'],
                ['小I','女',20,'大一'],
                ['小J','男',20,'大三']
            ]
 
for(var i = 0; i < infos.length; i++) {
    if(infos[i][2] === "20" && infos[i][1] === "女") {
        document.write("学生"+infos[i][0] + "<br />");
    }
}
 
 
</script>
</head>
<body>
</body>
</html>

正在回答

3 回答

因为年龄在数组中是number类型,===(全等于)是数字相等而且数值类型也要相同。20 ==='20' 返回false

你的判断条件不成立所以没有输出,可以将 === 改成 == 或者去掉 20 的引号。

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

shrub__ 提问者

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

楼上说的对

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

for(var i = 0; i < infos.length; i++) {

    if(infos[i][2] == "20" && infos[i][1] == "女") {

        document.write("学生:"+infos[i][0] + "<br />");

    }

}

你多个等号

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

shrub__ 提问者

手动感谢!
2016-06-23 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

为什么更改筛选条件就不输出结果了?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信