どうにかforEachで出来ないのかなと思って調べる。
// こういうオブジェクトがあったとしてね
var obj = { tanuki:'pon-poko', kitsune:'kon-kon', neko:'nyan-nyan' };
// forEachで回したいなと
// しかしこれはエラーです
obj.forEach(function (v,i) {
// 処理...
});
// こうすればOK
Object.keys(obj).forEach(function (key) {
console.log(key + "は" + obj[key] + "と鳴いた!");
});
Object.keysであればプロトタイプチェーンは対象外なので、そのオブジェクトだけが保持しているものだけでループを回せる。