Кстати заметил, что последнее время, с появлением Object.keys, у меня в коде вообще исчезли for-in, теперь пишу:
var keys = Object.keys(obj), i = keys.length;
while (i--) {
    obj[keys[i]]…
}
в 
браузерах поддерживающих Object.keys разница в скорости с вариантом:
for (key in obj) {
    if (obj.hasOwnProperty(key)) {
        obj[key]…
    }
}
несущественна.