Javascript for loop var"i"被视为字符串?

Leo*_*oni 2 javascript titanium

我正在使用Titanium构建一些移动应用程序,我注意到这将产生我没想到的结果.

data = ['a','b', 'c','d'];

for (var i in data){
    Ti.API.debug(i+1);
};
Run Code Online (Sandbox Code Playgroud)

这将打印:01,11,12,13

这是Titanium特有的东西还是一般用Javascript?

为什么'i'不被视为整数?我很迷茫.

谢谢你的帮助.

Fra*_*ila 5

这并不直接回答你的问题,但如果你是通过一个数组循环,你应该使用for (var i in data).这循环遍历对象的所有成员,包括方法,属性等.

你想要做的是:

for (var i=0, item; i<data.length; i++) {
    item = data[i];
}
Run Code Online (Sandbox Code Playgroud)