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

大佬们,如何第一次循环后将值创建为新数组再进行一次循环得到结果

能否在第一次循环时不用  if(infos[i][3]=="大一" && infos[i][1]=="女")  来进行输出结果

而是第一次循环判断是否为大一学生

将判断为大一学生的值创建为一个新数组

然后通过再一次循环 比如if(arr[j][1]=="女") 来输出本次任务的结果


正在回答

5 回答

看了答案,我无话可说。你就借鉴下你的问题我解决的思路,其他不用看了。

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

我就是这个思路,用两个嵌套for循环就搞定。

慕课的这个代码编辑器有问题,你自己复制到vscode或者其他文本编辑器,格式一下,就能看清楚了。

0 回复 有任何疑惑可以回复我~
var infos = [['小A','女',21,'大一'],['小B','男',23,'大三'],['小C','男',24,'大四'],['小D','女',21,'大一'],['小E','女',22,'大四'],['小F','男',21,'大一'],['小G','女',22,'大二'],['小H','女',20,'大三'],['小I','女',20,'大一'],['小J','男',20,'大三']]; var n=0; var arr= new Array(); //第一次筛选,找出都是大一的信息 for(var i=0;i<infos.length;i++){     for(var j=0;j<infos[i].length;j++){         if(infos[i][j]=="大一"){             arr[n]=infos[i];             n++;             break;         }     } }   //第二次筛选,找出都是女生的信息 for(var i=0;i<arr.length;i++){     for(var j=0;j<arr[i].length;j++){         if(arr[i][j]=="女"){             document.write(arr[i][0]);             break;         }     } }


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

<!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,'大四'],

['小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][3] === "大一") {

var a=infos[i];  /*创建为大一学生的新数组*/

/*这里可以先显示新数组,用:document.write(a);*/

if(a[1]==="女"){

document.write(a[0])

}

}

}


</script>

</head>

<body>

</body>

</html>


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

举报

0/150
提交
取消

大佬们,如何第一次循环后将值创建为新数组再进行一次循环得到结果

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