js中for..in的用法

<script type="text/javascript">
var x
var mycars = new Array()
mycars[0] = "a"
mycars[1] = "b"
mycars[2] = "c"
for (x in mycars)
{
document.write(mycars[x] + "<br />")
}
</script>
  1. x不用设置初始值吗?

  2. 这个语句输出了所有的数组元素,与document.write(mycars)有什么区别?

hcl哦了
浏览 1691回答 3
3回答

ruibin

这里x是没有初始值的,在不同的浏览器中表现不一样,相当于一个随机数。在chrom浏览器里面,你可能总是看到x的第一个值为0(这里的x是key值,即属性名),在ie、oprea或者其他可能第一个值就是2.for  in循环和for循环不一样是个无序循环。第二个问题,你这里输出的是数组里面的每一个元素,而不是数组。而document.write(mycars)输出的是整个数组。一个是整体一个是个体。 

ruibin

我聊天区回答不了,好像是有点bugg,只能在评论区回答,或者点你头像才能回答。

wblovezqy

1.x在没有初始化前使用才会报错。2.document.write( mycars ); 相当于document.write( mycars.toString() );
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript