var arrRoot = 
[
["title1",
["arr1", "item", "some"],
["arr2", "item", "some"],
],

["title2",
["arr1", "item", "some"],
["arr2", "item", "some"],
],
];访问 var s = "";
for (var i = 0; i < arrRoot.length; ++i)
{
s += "<dl>" + arrRoot[i][0] + "</dl>";
}问题:
1、IE 下提示 ‘arrRoot[...].0 为空或不是对象’
2、Chrome/Firefox 就正常是不是 IE 对 Javascript 的解析不标准?

解决方案 »

  1.   

    感觉不可能呀!
    这些都是JS的核心数组语法,IE肯定支持的。
      

  2.   


    PC 下的 IE6,以及 WinCE5.0 下的 IE6,都是提示这个错误。但用 Chrome/Firefox 运行就正常。
      

  3.   

    ["title2", 
    ["arr1", "item", "some"], 
    ["arr2", "item", "some"], 
    ]
    ]; 多了个逗号...
    Chrome/FF等会容错掉,但是ie不会,所以会提示那个错误
    就好比
    [1,2,]
    ie中length为3
    ff中length为2
      

  4.   


    <script language='javascript'> 
    var arrRoot = 

    ["title1", 
    ["arr1", "item", "some"], 
    ["arr2", "item", "some"], 
    ], 

    ["title2", 
    ["arr1", "item", "some"], 
    ["arr2", "item", "some"], 
    ]
    ];
    var s = ""; 
    for (var i = 0; i < arrRoot.length; ++i) 

    alert(arrRoot[i][0]);
    s += " <dl>" + arrRoot[i][0] + " </dl>"; 
    }
    </script>
    试试~·
      

  5.   


    GOOD!试了一下去掉逗号,IE 下表现也正常了。那,还是算到 IE 的 Javascript 解析器“不够健壮”、“不够兼容”上去吧
      

  6.   

    ["title2",
    ["arr1", "item", "some"],
    ["arr2", "item", "some"],
    ],
    ]; 红色的都应该去掉吧
      

  7.   

    楼主我觉得这不是IE解释器的问题,你那语法真的不对,但我也就想不来firfox为什么会没问题?