2013-03-05 122 views
2

這段代碼顯然不適用於JavaScript,但我如何在JS中執行此操作?在JavaScript中設置數組鍵值

它應該是顯而易見的代碼,但我需要分配一個數組鍵值(所以'a','5'和'8'在下面的例子中) - 不幸的是我需要有一個字母,所以0 ,1,2等不好。

我已經看到了一些與對象和'a'有關的問題:'op1',但它似乎並沒有工作我得到錯誤,如「意想不到的令牌:」 - 我敢打賭,這很容易,當你知識?

var options = new Array('a' => 'op1', '5' => 'op2', '8' => 'op3'); 

for(x in options) { 

    var value = options[x]; 

    alert("the key is " + value[0]); 

    alert("the value is " + value[1]); 

} 

的jQuery或本機JS,取其最好是好的(我使用jQuery在該網頁反正)

回答

3

設置對象:

var options = { 'a' : 'op1', '5' : 'op2', '8' : 'op3' } 

在for-in循環,密鑰xoptions[x],而不是value[0]value[1]

+0

謝謝大家。來自每個人的優秀幫助,但這是第一次,這是我讀到的實際解決問題。知道這很容易,當你知道如何。再次感謝。 – user2026796222222222 2013-03-05 23:41:04

2

這是JavaScript對象的文字符號:

var options = { 
"a": "op1", 
"5": "op2", 
"8": "op3" 
}; 

你也應該知道,按鍵的順序是沒有保證的,如果你需要爲了特定的,你應該保持的鑰匙在一個數組和循環利用那。另外,如果你遍歷一個對象,你可能想確定你是否正在訪問當前對象的屬性,或者你正在通過原型鏈。

+0

@丹尼斯 - 真的,我的壞。修復。 – 2013-03-05 23:45:05

1
var options = {'a':'op1', '5':'op2', '8':'op3'}; 

for (var x in options) { 
    alert("the key is " + x); 
    alert("the value is " + options[x]); 
}