簡體   English   中英

如何返回關聯數組鍵作為字符串?

[英]How do I return an associative array key as string?

我有一個數組,設置如下

var myArray = [
    {'10/3/2014': "some value"}, 
    {'10/4/2014': "some value"}, 
    {'10/5/2014': "some value"}];

這是我需要的數據的簡單版本,並且能夠像我期望的那樣訪問數組中的值。

我的問題:如何將鍵值用作字符串? 我希望能夠將我正在使用的日期用作其他地方的鍵,以用於顯示。

編輯有關問題的更多詳細信息

我有JSON數據如下

活動:{10/3/2014:[{}],10/4/2014:[{},{}],10/5/2014:[{},{}]}

每個日期代表一個包含一個或多個事件詳細信息的數組(實際數據已刪除,因此您無需花費更多空間就可以得到創意)。 我遍歷所有項目並按預期使用它們,但是我想使用日期,但不知道如何訪問它們。

只需將其設置為如下對象:

var myVar = { '10/3/2014': "some value", '10/4/2014': "some value", '10/5/2014': "some value"};

然后你可以這樣稱呼它

alert(myVar['10/3/2014']);

我想從數組中創建一個對象映射,其中鍵為日期,這是一種方法:

var myArray = [
    {'10/3/2014': "some value"}, 
    {'10/4/2014': "some value"}, 
    {'10/5/2014': "some value"}
];

var valuesMap = myArray.reduce(function (map, obj) {
    var date = Object.keys(obj).pop();

    map[date ] = obj[date];

    return map;
}, {});

//{10/3/2014: "some value", 10/4/2014: "some value", 10/5/2014: "some value"}

嘗試使用Object.keys()

例:

var myArray = [{ '10/3/2014': "some value"}, {'10/4/2014': "some value"}, {'10/5/2014': "some value"}];
Object.keys(myArray[0])[0]; // will return '10/3/2014'
Object.keys(myArray[1])[0]; // will return '10/4/2014'
Object.keys(myArray[2])[0]; // will return '10/5/2014'

希望這可以幫助!

我會在數組的幫助下做類似的事情: http : //jsfiddle.net/csdtesting/et1m795a/

 var myArray = [{ '10/3/2014': "some value" }, { '10/4/2014': "some value" }, { '10/5/2014': "some value" }]; var splashArray = new Array(); //the array with the key names $.each(myArray, function(key, value) { $.each(value, function(key, value) { //console.log(key, value); splashArray.push(key); }); }); document.write(splashArray[0]) /*10/3/2014*/ 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js"></script> 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM