数组中的Javascript日期
我有一个日期数组,我通过循环得到每个元素。元素不是日期对象,而是字符串(我想) 如果我向控制台显示每个元素,我会得到: 2015,09,19 2015,09,21 我试图把它们变成正常的日期,但我总是得到无效的日期。如果我静态地尝试数组中的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
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
。这是一个数字数组吗?那是一根绳子吗?那是什么?非常感谢你。我讨厌约会,但我没有意识到一个约会需要三个输入,并且假设,已经把它们分开了!再次感谢你