我创建了一个Javascript逻辑,用于从某些值中检索日期和时间。
最初我做了解析DateTime,将其转换为字符串,然后拆分字符串并检索日期。
就像我检索了解析的时间,并且atlast一起加入(新的日期+新的时间)。
我试图将它转换为日期,现在当我提醒它然后它说无效的日期。我想像这种格式一样显示新创建的日期。
var sampDate = new Date(); 警报(sampDate);
我不擅长解释所以iam上传我的代码以便在这里也是。
请看一下JSFiddle。我的工作如下。请详细说明我的错误。任何帮助将非常感谢。
JSFIDDLE:http://jsfiddle.net/5csge/
var date = 1745488627000;
var parsedDate = new Date(parseInt(date, 10)).toString();
var splitDate = parsedDate.split(" ");
var currentMonth;
switch (splitDate[1]) {
case "Jan":
currentMonth = 1;
break;
case "Feb":
currentMonth = 2;
break;
case "Mar":
currentMonth = 3;
break;
case "Apr":
currentMonth = 4;
break;
case "May":
currentMonth = 5;
break;
case "Jun":
currentMonth = 6;
break;
case "Jul":
currentMonth = 7;
break;
case "Aug":
currentMonth = 8;
break;
case "Sep":
currentMonth = 9;
break;
case "Oct":
currentMonth = 10;
break;
case "Nov":
currentMonth = 11;
break;
case "Dec":
currentMonth = 12;
break;
}
var time = -688627000;
var parsedTime = new Date(parseInt(time, 10)).toString();
var splitTime = parsedTime.split(" ");
var convertedEndDate = new Date(splitDate[2] + "/" + currentMonth + "/" + splitDate[3] + " " + splitTime[4]);
alert(convertedEndDate);
var currentDate = new Date();
alert(currentDate);
答案 0 :(得分:4)
您的问题在这里:
var convertedEndDate = new Date(splitDate[2] + "/" + currentMonth +
"/" + splitDate[3] + " " + splitTime[4]);
您可以假设24/4/2025 00:42:53
可以作为参数传递到Date()
对象中。来自MDN:
<强> dateString 强>
表示日期的字符串值。该字符串应采用Date.parse()方法识别的格式(符合IETF的RFC 2822时间戳以及ISO8601的版本)。
这显然不是ISO8601格式(可以从2025-04-24开始),但它似乎也不是RFC282时间戳的格式。事实上,最好不要将月份名称翻译成数字;以下似乎完美地工作,用空格替换/
:
var convertedEndDate = new Date(splitDate[2] + " " + splitDate[1]
+ " " + splitDate[3] + " " + splitTime[4]);
答案 1 :(得分:1)
答案 2 :(得分:0)
使用日期对象并设置方法。 D =新日期(); D.setDay(12); D.setMonth(2); 当你这样做时,日期将在脚本执行后间接继续