我的反应组件中有一个名为dateEnd
的变量中的日期字符串,如此Mon Nov 20 2017 23:59:59 GMT-0200
,我想提取日期(20)并将其转换为数字。
这是我的代码:
let dateEnd = rangePicker['endDate'] && rangePicker['endDate'].toString();
我该怎么做?
我试过这样的事情:
let dateEndNum = parseInt(dateEnd.replace(/^\D+|\D.*$/g, ""), 10);
但是返回一个错误,因为.replace
未定义。
此外,我想得到初始日期和结束日期,以计算这些日期之间的天数。
答案 0 :(得分:1)
这会返回一个布尔值。
let dateEnd = rangePicker['endDate'] && rangePicker['endDate'].toString();
你想要的是这样的:
let dateEnd = rangePicker['endDate'] ? rangePicker['endDate'].toString() : '';
答案 1 :(得分:0)
虽然这与React无关,但我建议使用momentjs,你可以使用日期字符串创建一个时刻对象,并且可以让你想要的其中一个函数。
答案 2 :(得分:0)
您的问题与反应无关。但是我建议你试试moment.js
- 它是一个超级强大的js库,用于处理日期时间对象。在你的情况下:
const momentDate = moment("Mon Nov 20 2017 23:59:59 GMT-0200");
const extractedDays = momentDate.date();