数组的添加和删除

大神们帮忙分析下, for(var i in arrayTest) 和 for(var i =0 ; i<arrayTest.length; i++) 对于数组的添加和删除,网页版和JSB版 是不是i 的取值会不相同
test2中两个版本相同,test1中,网页版中i 执行(0,1,2)三次,JSB中i 执行(0,1)两次。。。。

test1:function(){
var arrayTest = ];
arrayTest.push(1,2,3);
for(var i in arrayTest){
//数组中删除第i个起,1个
arrayTest.splice(i, 1);
//数组中最前端,添加null,保持数组长度
arrayTest.unshift(null);
}
},

test2:function(){
    var arrayTest = ];
    arrayTest.push(1,2,3,4,5);
    for(var i =0 ; i<arrayTest.length; i++){
       //数组中删除第i个起,1个
        arrayTest.splice(i, 1);
       //数组中最前端,添加null,保持数组长度
        arrayTest.unshift(null);    
    }
}

大神呢,难得新手突然遇到这么神奇的事