w123560 2015-05-25 17:04 采纳率: 0%
浏览 2341

js中用for in 语句遍历数组问题

var arr=new Array(3);
用for循环遍历:
for(var x=0;x<arr.length;x++){
document.write(arr[x]);
}
网页上显示:undefined undefined undefined

现在用for in 遍历:
for(var x in arr){
document.write(arr[x]);
}
为什么网页上什么都不显示?

  • 写回答

7条回答

  • danielinbiti 2015-05-25 17:11
    关注

    这两种方式有差异的,对于第一种方式来说,在new的时候确定了array的大小,循环数组大小取值,因为没有初始值,都是undefined.
    第二种方式是通过array的属性方式,是不关心数组大小的,只关心里面内容,因为没有赋值,因为只有长度,实际内部还是没有内容,无法形成key,value的方式,也就没有输出。

    评论

报告相同问题?

悬赏问题

  • ¥15 C# datagridview 栏位进度
  • ¥15 vue3页面el-table页面数据过多
  • ¥100 vue3中融入gRPC-web
  • ¥15 kali环境运行volatility分析android内存文件,缺profile
  • ¥15 写uniapp时遇到的问题
  • ¥15 vs 2008 安装遇到问题
  • ¥15 matlab有限元法求解梁带有若干弹簧质量系统的固有频率
  • ¥15 找一个网络防御专家,外包的
  • ¥100 能不能让两张不同的图片md5值一样,(有尝)
  • ¥15 informer代码训练自己的数据集,改参数怎么改