js的for in的小提示
话说今天调了一个bug,先叙述一下过程吧: if(!Array.prototype.indexOf){ Array.prototype.indexOf = function(obj){ for(var i=0; i<this.length; i++){ if(this[i]==obj){ return i; } } return -1; } } 这段代码估计很多人用过吧,他是用来解决IE下没有indexOf这个问题的,也就是因为这段代码,才出现的IE下for in的问题(好吧,都是万恶的IE。。。。。) 当还没加上这段代码的时候 var a = [1,2,3]; for( var k in a){ alert(a[k]); } 这样没有任何问题,结果是1,2,3。。。。 但是,当加上上面的代码时,奇迹就发生了,他会先打出上面的function,然后再1,2,3...