我想通过使用从数据库中获得的变量来创建一个日期对象。该字符串已经是正确的格式,已经用逗号分隔“yyyy,mm,dd,hh,mm,ss”。然而,试图创建一个Date对象会返回一个Invalid Date错误。JavaScript日期对象不能传递给它的字符串
var foo ='2012,03,09,12,00,00,00';
document.write(foo); //<-- obviously writes the string 2012,03,09,12,00,00,00 to the browser
var then=(new Date(foo));
document.write(then); //<-- returns Invalid Date
我有一个解决方案如下:
var x = foo.split(/[,]/);
var then = new Date(x[0], x[1], x[2], x[3], x[4], x[5]);
奇怪,为什么这个时候基本上就是重新创建一个传递给它相同的字符串是必要的。
一个日期是不是字符串。 new Date(x [0],x [1],x [2],x [3],x [4],x [5])不使用字符串,而是使用6个字符串创建Date对象。 –