Jie*_*eng 1 javascript arrays for-loop
为什么当我这样做
var footnoteLinks = [1,2,3];
for (var i in footnoteLinks) {
document.write(footnoteLinks[i] + ", ");
}
Run Code Online (Sandbox Code Playgroud)
我得到的是......
1,2,3,function(){return lower; },function Array(){[native code]},function pop(){[native code]},function push(){[native code]},function reverse(){[native code]},function shift() {[native code]},function sort(){[native code]},function splice(){[native code]},function unshift()
这是为什么?什么功能等...我觉得它工作正常b4,我不知道是什么导致了这一点,对于我尝试的所有浏览器似乎都一样.Firefox 3.6,Chrome 6(我认为?),IE9
的for(var in obj)是用于遍历一个对象的属性.您将获得已创建的Array对象的属性.
您需要更传统的循环/索引构造:
for(var i=0,z=footnoteLinks.length; i<z; i++)
Run Code Online (Sandbox Code Playgroud)
一些JavaScript运行时也有map和reduce对数组对象的方法,但是这不能保证.但是,大多数JavaScript库都有类似的东西(或许是一种each方法).
| 归档时间: |
|
| 查看次数: |
618 次 |
| 最近记录: |