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

同学们帮我看看是哪里出问题了 运行后没有输出

<!DOCTYPE  HTML>
<html >
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>流程控制语句</title>
<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(var i=0;i<10;i++){
    while(infos[i][1]=='女'){
    switch(infos[i][3]=='大一')
    {
        case '大一':
            document.write(infos[i][0]);
        case '大二':
            document.write(infos[i][0]);
        case '大三':
            document.write(infos[i][0]);
        case '大四':
            document.write(infos[i][0]);
        default:
            document.write("没有大一的女生");
    }
    }
}
</script>
</head>
<body>
</body>
</html>

正在回答

3 回答

var infos=[

    ["小A","女",21,"大一"],

    ["小B","男",23,"大三"],

    ["小C","男",24,"大四"],

    ["小D","女",21,"大一"],

    ["小E","女",22,"大四"],

    ["小F","男",21,"大一"],

    ["小G","女",22,"大二"],

    ["小H","女",20,"大三"],

    ["小I","女",20,"大一"],

    ["小J","男",20,"大三"]

  ];

 //第一步把之前的数据写成一个数组的形式,定义变量为 infos

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

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

switch(infos[i][3]){

case "大一":

document.write(infos[i][0]);break;

}

}

}

  1. 原文中 default后面的冒号是中文符号,应该改为英文符号--:

  2. switch后面的判断句 infos[i][3]=='大一'  值的类型只可能是boolean类型(true和false)

  3. 字符串应该用""而不是''


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

楸枫夜落

js中 字符串 貌似可以用单引号,java等一些强类型的语言是不行......
2016-11-12 回复 有任何疑惑可以回复我~
#2

qq_请叫我曼哥好么_0 提问者

改了之后还是没有输出啊
2016-11-12 回复 有任何疑惑可以回复我~
#3

qq_请叫我曼哥好么_0 提问者

好了 是我的问题 我把二维数组的定义改成了在java中的定义方式了
2016-11-12 回复 有任何疑惑可以回复我~
#4

qq_风吹过下雨天_04389684 回复 楸枫夜落

恩 是的. 不过保险起见我都是双引号.
2016-11-12 回复 有任何疑惑可以回复我~
查看1条回复

var stu=[

    ['小A','女',21,'大一'],

    ['小B','男',23,'大三'],

    ['小C','男',24,'大四'],

    ['小D','女',21,'大一'],

    ['小E','女',22,'大四'],

    ['小F','男',21,'大一'],

    ['小G','女',22,'大二'],

    ['小H','女',20,'大三'],

    ['小I','女',20,'大一'],

    ['小J','男',20,'大三'],

]; //第一步把之前的数据写成一个数组的形式,定义变量为 infos

 for(var i=0;i<10;i++){

    if(stu[i][3]=='大一'&&stu[i][1]=='女'){

        document.write('大一女生:'+stu[i][0]+'<br>')

    }

 

 }


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

你的while循环是个死循环,没有跳出,会一直执行,来个if不是好些么,只是条件判断....每个case貌似没有break,会全部执行呀.......

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

楸枫夜落

还有switch不能当做条件语句来判断吧,放个变量...
2016-11-12 回复 有任何疑惑可以回复我~
#2

qq_请叫我曼哥好么_0 提问者

说的是有道理 后来我意识到了
2016-11-12 回复 有任何疑惑可以回复我~
#3

楸枫夜落 回复 qq_请叫我曼哥好么_0 提问者

建议你按照自己的的那个思路做,适当修改下就可以改出来的,那样才是你学会的,别人的答案是别人的思路,参考下就好,你理解知识还得按照你自己的习惯...
2016-11-12 回复 有任何疑惑可以回复我~
#4

qq_请叫我曼哥好么_0 提问者 回复 楸枫夜落

嗯嗯 谢谢你! 方便交个朋友吗?以后问问题方便点
2016-11-12 回复 有任何疑惑可以回复我~
查看1条回复

举报

0/150
提交
取消

同学们帮我看看是哪里出问题了 运行后没有输出

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