问答详情
源自:4-10 编程练习

[i][3]判断求解

<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] === "大一" && infos[i][1] === "女") {
		document.write(infos[i][0] + "<br />");
	}
}
</script>

请问这里为什么要用[i][3]判断=大一,[i][1]=女,最后write[i][0]?

如果用[i][5]判断=大一,[i][3]=女,是否也可以?

没看懂,求解释一下

提问者:Jonnyshao 2016-10-25 00:21

个回答

  • Datcg
    2016-10-25 01:41:45
    已采纳

    哈哈,同学你好,看来你还没怎么理解二维数组的概念哦,[i][3]代表的是一维的值取i,二维的值取3。什么意思呢,直观点就是你把里面的每个数组都看成一个整体,这样整个infos数组就变成了一维数组了。用infos[2],就代表['小B','男',23,'大三']。然后如何才能把每个小数组里面的数据拿出来呢?很简单,就用第二个参数来定位,如infos[2][1]就是'男'啦!~回到题中,如果我们把第一个参数设置为i,i从0到9(9为数组长度)取值,然后小数组的定位值写成[3],代表着年级。所以[i][3]就可以把每一个数组的年级值获取出来了。

  • 慕无忌6210438
    2016-10-25 01:41:43

    数组下表从0开始,二维数组从00开始。[i][3]:如果把二维数组看作一个矩阵的话,i用来控制行数,3是列数,说白了就是取第i个数组中的第4个元素,即每次都取年级