for(i in o)
遍历对象o的所有属性,每次取出民属性放到i中,i即属性,o[i]才是属性的值。

解决方案 »

  1.   

    for...in 语句
    对应于一个对象的每个,或一个数组的每个元素,执行一个或多个语句。 for (variable in [object | array])
       statements 参数
    variable必选项。一个变量,它可以是 object 的任一属性或 array 的任一元素。 object, array可选项。要在其上遍历的对象或数组。statement可选项。相对于 object 的每个属性或 array 的每个元素,都要被执行的一个或多个语句。可以是复合语句。说明
    在循环的每次迭代前,variable 被赋予 object 的下一个属性或 array 的下一个元素。然后可以在循环内的任一语句中使用它,就好像正在使用 object 的该属性或 array 的该元素一样。当在一个对象上迭代时,没有办法决定或控制把对象的成员赋给 variable 的次序。在数组内将按元素的次序执行迭代,也就是,0、1、2、......示例
    下面示例说明了 for ... in 语句的用法,它把一个对象用作一个联合数组: function ForInDemo(){
       // 创建某些变量。
       var a, key, s = "";
       // 初始化对象。
       a = {"a" : "Athens" , "b" : "Belgrade", "c" : "Cairo"}
       // 迭代属性。
       for (key in a)   {
          s += a[key] + "&ltBR>";
       }
       return(s);
    }
      

  2.   

    <SCRIPT LANGUAGE="JavaScript">
    <!--
    var c="abcdef"
    var i,j,k
    var tx=new Array;
    for(i=0;i<c.length;i++)
    {
    j=c.charAt(i);
    tx[j]=i                        
    }
    for(k in tx)
    {
      alert(tx[k])        
    }
    //-->
    </SCRIPT>