JavaScript中“过于”犀利地for/in循环使用示例

(编辑:jimmy 日期: 2024/10/10 浏览:2)

Java中的增强for循环很是好用
复制代码 代码如下:
for (String str : list) {
System.out.println(str);//其中str直接就是集合中的元素
}

但是JavaScript中为我们提供的for/in循环已然不是这么简单了
复制代码 代码如下:
var car
var garage= new Array()
garage[0] = "宝马"
garage[1] = "奔驰"
garage[2] = "宾利"
for (car in garage)
{
document.write(garage[car] + " ")
}
//输出结果: 宝马 奔驰 宾利

看起来我得到我的车列表了

但是现在我对我的车库有更高的要求,我希望它可以上锁,并且能够自行清洁

于是
复制代码 代码如下:
var car
var garage= new Array()
garage[0] = "宝马"
garage[1] = "奔驰"
garage[2] = "宾利"
garage.locked = true
garage.clean = function(){
alert("清洁")
}
for (car in garage)
{
document.write(garage[car] + " ")
}
//输出结果:宝马 奔驰 宾利 true function (){ alert("清洁") }

好嘛,它把自己知道的都说了出来

为了避免这种尴尬我们只好用回原始for循环
复制代码 代码如下:
var car
var garage= new Array()
garage[0] = "宝马"
garage[1] = "奔驰"
garage[2] = "宾利"
garage.locked = true
garage.clean = function(){
alert("清洁")
}
for (car = 0;car < garage.length;car++)
{
document.write(garage[car] + " ")
}
//输出结果:宝马 奔驰 宾利

恩,这下好多了。

一句话新闻

高通与谷歌联手!首款骁龙PC优化Chrome浏览器发布
高通和谷歌日前宣布,推出首次面向搭载骁龙的Windows PC的优化版Chrome浏览器。
在对骁龙X Elite参考设计的初步测试中,全新的Chrome浏览器在Speedometer 2.1基准测试中实现了显著的性能提升。
预计在2024年年中之前,搭载骁龙X Elite计算平台的PC将面世。该浏览器的提前问世,有助于骁龙PC问世就获得满血表现。
谷歌高级副总裁Hiroshi Lockheimer表示,此次与高通的合作将有助于确保Chrome用户在当前ARM兼容的PC上获得最佳的浏览体验。