在javaScript中 for in 语句会遍历undefined的数组元素吗?

 我来答
fantasy_wl
2012-12-11 · TA获得超过904个赞
知道小有建树答主
回答量:1287
采纳率:100%
帮助的人:1349万
展开全部
一样会遍历,而且类型还是undefined
但是遍历数组最好不要用for in,除非万不得已,应尽量用其他方法替代,因为可能产生意料之内的bug
追问
这段代码:
var arr = new Array(10);
arr[1] = 5;
arr[2] = 'china';
for (var i in arr) {
alert(arr[i]);
}
为什么只打印出5和'china'?没有给arr[0]赋值,for in 如果会遍历所有数组元素,为什么不先打印出undefined(指arr[0])再打印出arr[1]和arr[2]然后打印7个undefined!

ps:单独打印alert(arr[0]);可以打印出undefined.
追答
因为你用的是for in循环,用for循环
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式