jQuery 将日期时间转换为特定格式

新手上路,请多包涵

我的 .net 应用程序中有一个从服务器端返回的日期时间,如下所示:

 Jul 24 2017  7:33PM

我试图将其转换为:

 yyyy-MM-dd

格式如下:

 var date = new Date(data);
 var res = (date.getFullYear() + '-'(date.getMonth() + 1) + '-' + date.getDate());

但是当我在控制台输出结果时,我得到的结果是:

 NaN-NaN-NaN

如何将 jQuery/Javascript 中的时间转换为 yyyy-MM-dd 格式?

有人可以帮我吗?

PS Guys 这里是返回我试图转换的结果和日期的查询:

      var user = ctx.Users.Where(x => x.UserId == _parsedId)
                .Select(b => new
                {
                    Active = b.Active,
                    Email = b.Email,
                    Subscriptions = b.Subscriptions.Where(p => p.Active == true).Select(sub => new
                    {
                        SubscriptionID = sub.SubscriptionId,
                        Type = sub.SubTypes.SubName,
                        ReferenceID = sub.ReferenceId,
                        Active = sub.Active,
                        DateCreated = sub.CreateDate.ToString("yyyy-MM-dd"),
                        ExpirationDate = sub.ExpirationDate.ToString("yyyy-MM-dd")
                    }).ToList(),
                    Roles = b.UserRoles.Where(p => p.Active == true).ToList()
                })
                .AsEnumerable()
                .Select(x => x)
                .FirstOrDefault();

   // ExpirationDate - is of Type DateTime?
   // CreatedDate - is of Type DateTime

当我尝试将日期时间转换为特定格式时,出现以下错误:

附加信息:LINQ to Entities 无法识别“System.String ToString(System.String)”方法,并且无法将此方法转换为存储表达式。

原文由 User987 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 524
2 个回答

你可以随时使用 moment.js ( http://momentjs.com/ )

这是使用日期和时间进行操作的最简单方法之一。

使用 moment 你可以很容易地通过以下方式隐藏:

 moment(new Date()).format('yyyy-MM-dd');

原文由 Sagar 发布,翻译遵循 CC BY-SA 3.0 许可协议

moment(yourdate, 'DD/MM/YYYY HH:mm').format("DD/MM/YYYY HH:mm");

原文由 Tayyeb 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题