さまざまなタイプのオブジェクトを含む配列を反復処理しているときに、オブジェクトのメソッドにアクセスする際に問題が発生しています。どちらのタイプのオブジェクトにも特定のメソッドが定義されていますが、「オブジェクト 0 にはメソッド 'update' がありません」という説明付きの TypeError が表示されます。オブジェクトを配列に入れる順序は関係ありません。私はjsにかなり慣れていないので、おそらく他の言語に基づいて誤った推論を行っている可能性があります.Chromeでテストしました。
(function(){
function Camera(){
this.bar = "bar";
};
Camera.prototype.update = function(){
this.bar +="bar";
}
function Object(){
this.foo = "foo";
};
Object.prototype.update = function(){
this.foo+="foo";
}
var camera = new Camera();
var object = new Object();
var array = [camera, object];
for(o in array){
o.update();
}
})();