Javascript日期转换和添加天数

Javascript日期转换和添加天数,javascript,date,Javascript,Date,我有一个字符串形式的日期,如下所示: var dateInput=“2019年12月7日星期六00:00:00 GMT+0300(东非时间)” 我想将该日期转换为dd/mm/yyyy,并且能够从该日期添加和减去天数,并且仍然保持相同的格式 以下是我将此字符串转换为dd/mm/yyyydate格式所做的操作: 我使用了这个助手函数: function convertDate(inputFormat) { function pad(s) { return (s < 10) ? '0' +

我有一个字符串形式的日期,如下所示:

var dateInput=“2019年12月7日星期六00:00:00 GMT+0300(东非时间)”

我想将该日期转换为
dd/mm/yyyy
,并且能够从该日期添加和减去天数,并且仍然保持相同的格式

以下是我将此字符串转换为
dd/mm/yyyy
date格式所做的操作: 我使用了这个助手函数:

function convertDate(inputFormat) {
  function pad(s) { return (s < 10) ? '0' + s : s; }
  var d = new Date(inputFormat);
  return [pad(d.getDate()), pad(d.getMonth()+1), d.getFullYear()].join('/');
}
这给了我字符串
7/12/2019

然后,当我尝试将5天添加到上述日期时,我得到以下结果:

date = date.setDate(date.getDate() + 5);
console.log(date);   // returns 1563310800000
我相信
156331080000
是一个UNIX时间戳,可以转换为
2019年7月16日


我希望它能返回
2019年12月12日

您的
dateInput
实际上是返回的格式,可以直接传递给日期构造函数以获取日期对象

函数toddmmyy(日期){ 让零件=[]; 设dd=date.getDate(); 设mm=date.getMonth()+1; 设yyyy=date.getFullYear(); 如果(dd<10){ parts.push(`0${dd}`) }否则{ parts.push(`${dd}`) } 如果(毫米<10){ parts.push(`0${mm}`) }否则{ parts.push(`${mm}`) } 零件推送(yyyy) 返回零件。连接(“/”); } const input=“2019年12月7日星期六00:00:00 GMT+0300(东非时间)”; let date=新日期(输入); 日期=新日期(date.setDate(date.getDate()+5));
log(toddmmyy(date))您的
dateInput
实际上是返回的格式,可以直接传递给日期构造函数以获取日期对象

函数toddmmyy(日期){ 让零件=[]; 设dd=date.getDate(); 设mm=date.getMonth()+1; 设yyyy=date.getFullYear(); 如果(dd<10){ parts.push(`0${dd}`) }否则{ parts.push(`${dd}`) } 如果(毫米<10){ parts.push(`0${mm}`) }否则{ parts.push(`${mm}`) } 零件推送(yyyy) 返回零件。连接(“/”); } const input=“2019年12月7日星期六00:00:00 GMT+0300(东非时间)”; let date=新日期(输入); 日期=新日期(date.setDate(date.getDate()+5));
log(toddmmyy(date))以下是如何使用。该库使解析、操作和显示日期等任务更容易实现

var输入=“2019-08-14T08:06:49.288Z”;
var日期=力矩(输入);
日期。添加(5,“天”);
控制台日志(日期格式(“DD/MM/YYYY”)

以下是您如何使用实现这一点的方法。该库使解析、操作和显示日期等任务更容易实现

var输入=“2019-08-14T08:06:49.288Z”;
var日期=力矩(输入);
日期。添加(5,“天”);
控制台日志(日期格式(“DD/MM/YYYY”)

使用momentJS做这样的事情很容易this@Kevin.a为小需求添加依赖项不是最好的做法though@AyushGupta我知道。如果他将来可能需要重复类似的操作,我建议使用momentJs:)并且由于
new Date()
在某些浏览器中的行为不同,因此使用momentJs对我来说始终是一种最佳实践。
new Date()
如果按照规范使用,则不会“在某些浏览器中表现不同”(只有极少数例外)。使用momentJS做这样的事情很容易this@Kevin.a为小需求添加依赖项不是最好的做法though@AyushGupta我知道。如果他将来可能需要重复类似的操作,我建议使用momentJs:)并且由于
new Date()
在某些浏览器中的行为不同,因此使用momentJs对我来说始终是一种最佳实践。
new Date()
如果按照规范使用,则不会“在某些浏览器中表现不同”(只有极少数例外)@Ayush,我想在dd/mm/yyyy中显示它。@PrerakSolaadded@Ayush,我想在dd/mm/yyyy中显示它。@PrerakSola addedI只想用js实现这一点。好的,我很感激,这演示了另一种方式。我只想用js实现这一点。好的,我很感激,这演示了另一种方式。
date = date.setDate(date.getDate() + 5);
console.log(date);   // returns 1563310800000