2011-08-27 45 views
0

我有一個充滿文字對象的2D數組。對象的屬性爲truefalse。我的問題:在JavaScript 2D數組中設置對象的真/假屬性

我試圖以這種方式

SpacesObjectsArray[2][0].HasRotator = true; 

然而,這將在陣列中的每個.HasRotator屬性設置爲位於[2][0]真不只是一個設置的屬性。

我在做什麼錯?

+1

你是如何構建陣列的?你能發佈一段代碼嗎? –

+3

在我看來,數組的每個元素引用**相同的**對象。你是如何創建陣列的? –

+0

「引用同一個對象」這聽起來像我做錯了什麼。我會惹惱這個,回到你的身邊。謝謝你! – Derek

回答

1

我編碼它只是爲了向你展示它的工作原理,如果你正確地創建你的陣列:http://jsfiddle.net/jfriend00/3uxcr/。因此,創建二維數組的方式必定存在問題,因爲如果它被正確創建,那麼您的代碼行就可以工作。

正如其他人所說的,您可能有一個對所有同一個對象的引用數組,因此當您更改該對象時,所有引用都會看到對同一個對象的更改。

+0

是的,那是我在做什麼。我只是一遍又一遍地將相同的對象粘在數組中。非常感謝jfriend00和Felix Kling – Derek