js中for in 既可以用来遍历数组也可以用来遍历对象
1.for in 在遍历数组的时候,遍历出来的值默认是string类型。
var a=[1,2,3];
for(i in a){
alert(typeof(i)); //尽管是一个数字数组,但还是会打印输出string
}
2.for in 遍历对象的时候不一定按章顺序遍历
var a={1:'a',3:'b',2:'c'}
for(i in a){
alert(a[i]); //会依次输出a.c.b(高版本浏览器:a.b.c)
}
3.在原型上加扩展方法或属性 也会被遍历出来
var a={1:'a',3:'b',2:'c'}
Object.prototype.username='test';
for(i in a){
alert(a[i]); //会依次输出a,c,b,test
}