曲径通幽论坛

标题: for...in 语句 [打印本页]

作者: easy    时间: 2013-4-12 22:06
标题: for...in 语句
for...in 语句可以遍历对象中所有的属性,或数组中的所有元素。使用形式为:
for (variable in object)
           statement
for (var variable in object)
           statement
variable 是赋值的变量。还可以使用 var 来定义局部变量。如果使用 var 来定义局部变量,那么该变量不用于循环,在每次循环时都会重新定义该变量。
object 是对象名或数组名。
statement 是循环执行的语句块。

对于对象,赋值给变量的是对象的属性名,因此可以在循环体中通过 [] 运算符来获得对象的属性值。
对于数组(数组可以看做是一个特殊的对象),赋值给变量的是数组的下标。

测试代码:
<script type="text/javascript" language="javascript">
<!--
   var myObj = {a:10, b:20, c:30};  //定义一个对象
   
   for (gobj in myObj) {
       //输出对象属性值
       document.write("myObj." , gobj, "=", myObj[gobj], "<br>");
   }
   
   //定义一个数组
   var myArray = [1, true, "hello"];
   for (var val in myArray) {
       document.write("myArray[", val, "]=", myArray[val], "<br>");
   }

-->
</script>
输出结果为:
myObj.a=10
myObj.b=20
myObj.c=30
myArray[0]=1
myArray[1]=true
myArray[2]=hello


使用 for...in 遍历对象属性或数组时,需要注意以下几点: