关于JS数组集合的一个问题,欢迎高手讨论
<html>
<head>
<title></title>
<script>
function show(){
var studentList = new Array();
studentList['一班']='张三';
alert(studentList['一班']);
studentList[0]='1111';
studentList[1]='2222';
for(var i = 0; i < studentList.length; i++){
alert(studentList[i]);
}
}
</script>
<body onload="show()">
</body>
</html>
这么一段很简单的代码,让我非常纠结,JS里面的Array对象,很多技术文档上面都说是通过下标进行存储的,但是我直接通过Key-Value的方式也能够把‘张三’存储进去,并且能够通过key取出值,很明显,‘张三’这个值已经可以确定存入到了studentList里面,但是问题来了,明眼人都知道,下面通过循环进行取值的时候是肯定取不出来'张三'的值的,那么,在这个studentList里面,JS底层到底是把所谓的下标,也就是var i当做字符判断来通过Key-Value来匹配Array里面的值,还是我用下标存储和用Key-Value存储在studentList里面的根本就是两个不同的区域呢?急求高手解答