var yourObjects = [
{ object: {obj1:"aa"}, direction: 'top' },
{ object: "obj2", direction: 'left' },
{ object: "obj3", direction: 'bottom' }
];
for (var i in yourObjects) { alert(i); }
それについては長い議論がありました。オブジェクトを反復処理するために使用for in
すると、オブジェクトのすべてのプロパティとメソッドが返されるため、通常は.hasOwnProperty()メソッドを使用する必要があります。しかし、配列を反復するとき、実際for in
には配列のインデックス(または連想配列の場合はキー)を反復します。私は持っているすべてのブラウザでそれを試しました。しかし、jsfiddleで試してみると...同じではありませんでした...配列が持つすべてのメソッドを返しました。
だから私の質問は:for in
配列を反復するために使用するのは安全ですか?
ブラウザとjsfiddleでこのコードを試して、どう思いますか。