问大伙一个很菜的问题,如何获取以名字命名的数组长度啊

eyunfei 2003-07-19 10:59:20
还望各位大哥大姐教教小弟。如下:
<script lanuage="javascrip">
<!--
var stu=new Array();
stu["学生1"]="数据1";
stu["学生2"]="数据2";
stu["学生3"]="数据3";

alert(stu.length);
-->
</script>

为什么弹出的结果不是3而是0呢,用什么方法能获取这种以名字命名的数组的长度!!!帮帮我,谢谢各位了.....
...全文
31 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
eyunfei 2003-07-20
  • 打赏
  • 举报
回复
不是的,我是想知道以字符串命名的下标变量的长度计算方法哦。。。
stu["学生1"]="数据1";
stu["学生2"]="数据2";
stu["学生3"]="数据3";
eyunfei 2003-07-20
  • 打赏
  • 举报
回复
原来是这样的啊。。。。。。。谢谢了。。
abent 2003-07-20
  • 打赏
  • 举报
回复
实际上你将一个Array作为一个Object使用了,Object当然没有length,只有自己计数或for...in循环取得了。
形印声传 2003-07-19
  • 打赏
  • 举报
回复
<script lanuage="javascrip">
<!--
function ss(){
var stu=new Array();
stu[0]="1";
stu[1]="2";
stu[2]="3";
alert(stu.length);
}

-->
</script>
<body>
<input type=button onclick="ss()" value="click">
</body>
eyunfei 2003-07-19
  • 打赏
  • 举报
回复
不是。。。
可以这样定义的,用这种方式定义更好记,而且用这样方式定义后对数据的查找非常好用。
如从搜索栏内输入 姓名A ,可以直接对其进行引用,stu["学生A"],就可以直接输出
其数据,而不需用格外的函数进行查找再输出了,减少了算法,很方便。。。
可现在我遇到的一个问题就是,数据是不定的,想要程序自动算出人数,用stu.length不管用,
请那位帮帮小弟啊。。。。。。
panyee 2003-07-19
  • 打赏
  • 举报
回复
var stu=new Array();
stu["学生1"]="数据1";
stu["学生2"]="数据2";
stu["学生3"]="数据3";

没这样定义的吧?
试一下这个
var stu = new Array {"数据1", "数据2", "数据3"};

87,994

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧