数组中的Javascript日期

数组中的Javascript日期,javascript,arrays,date,object,Javascript,Arrays,Date,Object,我有一个日期数组,我通过循环得到每个元素。元素不是日期对象,而是字符串(我想) 如果我向控制台显示每个元素,我会得到: 2015,09,19 2015,09,21 我试图把它们变成正常的日期,但我总是得到无效的日期。如果我静态地尝试 var temp = new Date(2015,09,21); 它工作得很好,但如果我这样做了 var temp = new Date(datax[i]); 我得到了无效的日期 下面是完整的循环 for (var i = 0; i &l

我有一个日期数组,我通过循环得到每个元素。元素不是日期对象,而是字符串(我想)

如果我向控制台显示每个元素,我会得到: 2015,09,19 2015,09,21

我试图把它们变成正常的日期,但我总是得到无效的日期。如果我静态地尝试

var temp = new Date(2015,09,21);
它工作得很好,但如果我这样做了

var temp = new Date(datax[i]);
我得到了无效的日期

下面是完整的循环

            for (var i = 0; i < datax.length; i++) {
            var temp = new Date(datax[i]); // fails says invalid date
            //var temp = new Date(2015,09,21); //works fine but is statically assigned (want to get it from array)
            console.log(temp);
        }
for(变量i=0;i

感谢您的帮助

如果数组的内容是类似“2015,19,09”的字符串,请使用

new Date(datax[i].replace(/,/g, "-");
它应该这样做

我猜“2015,19,09”不是要由date对象解析的有效字符串,但“2015-19-09”会

或者,如果您想要与手动尝试的模式相同的模式,请首先解析字符串并将其设置为数组

var temp = datax[i].split(",");
temp = new Date(temp[0], temp[1], temp[2]);
如果数组的内容本身就是一个数组,则选择

new Date(datax[i][0], datax[i][1], datax[i][2]);

数组中有什么?两个元素。。。一个是2015,09,19,另一个是2015,09,21新日期(2015,09,21)是3个参数,新日期(datax[i])只有一个,因此显然不一样。使用datax[i]的输出更新代码,执行console.log(datax[i]);输出已在我的post@user2229747您可能需要详细说明什么是
2015,09,19
。这是一个数字数组吗?那是一根绳子吗?那是什么?非常感谢你。我讨厌约会,但我没有意识到一个约会需要三个输入,并且假设,已经把它们分开了!再次感谢你