我的日期是字符串格式:
"05/2016" or "12/2015"
如何将字符串格式的上述日期转换为Date()javascript对象?
答案 0 :(得分:4)
Date constructor接受下一个序列中的params:year, month, day, hours, minutes, seconds, milliseconds
,因此只需解析字符串并将其传递给Date构造函数。
var data = "05/2016".split('/');
// Add + before year to convert str into number. Decrease second param because month starts from 0..11.
var date = new Date(+data[1],data[0] - 1);
console.log(date);
此外,您可以将字符串转换为new Date
正确解析的格式(请参阅MDN Date.parse description中有关dateString的详细信息。
// convert string "05/2016" -> "2016-05"
var dateString = "05/2016".split('/').reverse().join('-');
var date = new Date(dateString);
console.log(date);
答案 1 :(得分:2)
之前的答案不正确 - 他们得到的月份或年份都是错误的。这是对的(参见FrédéricHamidi的评论)
var str = "12/2015";
var arr = str.split('/');
var date = new Date(parseInt(arr[1], 10), parseInt(arr[0], 10)-1)
console.log(date)
答案 2 :(得分:1)
您可以拆分字符串以获取数组,然后使用Date构造函数。
新日期(年,月[,日[,小时[,分钟[,秒[,毫秒]]]]]);
var str = "12/2015";
var arr = str.split('/');
var date = new Date(parseInt(arr[1], 10), parseInt(arr[0], 10) - 1)
console.log(date)
答案 3 :(得分:0)
您可能需要查看Converting string to date in js
我遇到了类似的问题,偶然发现了现有的链接。