for...in
for...in is not foreach.
by EisenbergEffect
HTML
<script src="https://getfirebug.com/firebug-lite-debug.js"></script>
JavaScript
//Use for objects, not arrays.
var person = {
firstName:"Rob",
lastName:"Eisenberg",
sayHello:function(){
console.log("Hello, my name is " + this.firstName + " " + this.lastName + ".");
}
};
console.log("Object key iteration.");
for(var key in person){
if(person.hasOwnProperty(key)){
console.log(key + ": " + person[key]);
}
}
var someArray = [1,2];
someArray[5] = 23;
console.log("\nBad array iteration");
for(var key in someArray){
console.log(key + ":", someArray[key]);
}
console.log("\nGood array iteration");
for(var i = 0, length = someArray.length; i < length; i++) {
console.log(i, someArray[i]);
}