2015-03-19 32 views
-6

Javascript如何在數組內存儲信息?

var a={}, 
 
    b={key:'b'}, 
 
    c={key:'c'}; 
 
    
 
    
 
    
 
    a[b]=123; 
 
    a[c]=456; 
 
    
 
    alert(a[b]);

的輸出是什麼?它是123嗎? 456?還是不行?

+2

您可以簡單地在http://jsfiddle.net/上發佈您的代碼並驗證您的自我 – 2015-03-19 12:32:14

+2

您的問題不包含任何數組。 'a','b'和'c'都是對象。 – 2015-03-19 12:33:11

+0

編輯您的問題以包含答案;) – 2015-03-19 12:35:52

回答

1

您沒有任何數組。只有對象和字符串。

屬性名稱(以方括號表示法)是字符串,所以對象被強制轉換爲字符串。

您的代碼就相當於:

a['[Object object]']=123; 
a['[Object object]']=456; 
console.log(a['[Object object]']); 

所以輸出將456

+0

即使在OP不知道如何提問的情況下,人們也能理解這個問題,我喜歡它。 – 2015-03-19 12:37:27