Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/gwt/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何将关联数组键作为字符串返回?_Javascript - Fatal编程技术网

Javascript 如何将关联数组键作为字符串返回?

Javascript 如何将关联数组键作为字符串返回?,javascript,Javascript,我有一个数组,设置如下 var myArray = [ {'10/3/2014': "some value"}, {'10/4/2014': "some value"}, {'10/5/2014': "some value"}]; 这是我需要的数据的一个简单版本,我能够像预期的那样访问数组中的值 我的问题:如何将键值用作字符串? 我希望能够在其他地方使用我正在使用的日期作为显示目的的键 有关问题的更多详细信息,请编辑 我有如下json数据 var myArray =

我有一个数组,设置如下

var myArray = [
    {'10/3/2014': "some value"}, 
    {'10/4/2014': "some value"}, 
    {'10/5/2014': "some value"}];
这是我需要的数据的一个简单版本,我能够像预期的那样访问数组中的值

我的问题:如何将键值用作字符串? 我希望能够在其他地方使用我正在使用的日期作为显示目的的键

有关问题的更多详细信息,请编辑

我有如下json数据

var myArray = [
    {'10/3/2014': "some value"}, 
    {'10/4/2014': "some value"}, 
    {'10/5/2014': "some value"}];
事件:{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']);
尝试使用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'

希望这有帮助

如果要从数组中创建一个对象映射,其中的键是日期,下面是一种方法:

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"}

我会在数组的帮助下做类似的事情:

var myArray=[{
“2014年10月3日”:“一些价值”
}, {
‘2014年4月10日’:“一些价值”
}, {
“10/5/2014”:“一些价值”
}];
var splashArray=新数组()//包含键名称的数组
$.each(myArray,函数(键,值){
$.each(值、函数(键、值){
//console.log(键、值);
按(键);
});
});
document.write(splashArray[0])/*10/3/2014*/

这不是关联数组,这是对象数组。问题不清楚。要创建单个查找对象,其中键是根据特定日期快速查找值的日期?您所说的“如何将键值用作字符串”是什么意思?您是否尝试过使用具有嵌套for in循环的for循环遍历数组以遍历对象属性?您试图实现的最终结果是什么?好的,我想让我尝试做的是拥有日期键,以及与这些键关联的对象。我希望能够显示日期键,而不必以其他方式存储它们。我想既然我已经把它们作为键了,我应该能够以字符串的形式访问它们。使用for-in就像处理值一样,循环索引就是日期。@user3648646这就是你想要的吗