繁体   English   中英

如何在节点js中的日期中获取日期名称

[英]How to get day name in a date in node js

我有这样的约会

2017-06-23,我想要的输出是

2017 年 6 月 23 日星期五

 v.npi.appointment_dates[j] = date.toLocaleString('en-US', {year: 'numeric', month: 'long', day: 'numeric' });

但由于日期:“数字”,我错过了日期名称。 谁能帮帮我吗?

您需要在选项对象中包含weekday: 'long'

 var date = new Date(); console.log(date.toLocaleString('en-US', { weekday: 'long', year: 'numeric', month: 'long', day: 'numeric' }));

如果要采用浏览器默认语言,请使用undefined

 var date = new Date(); console.log(date.toLocaleString(undefined, { weekday: 'long', year: 'numeric', month: 'long', day: 'numeric' }));

即使有选项支持, toLocaleString的结果仍然依赖于实现,因为“locale”选项实际上是一种语言代码,即使用户说该语言,这也可能不是用户所期望的,并且浏览器开发人员可能没有选择预期的格式.

这是您正在寻找的功能。

function getFormattedDate(date) {
  var dayNames = ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday']
  var monthNames = ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December']

  var dayOfMonth = date.getDate()
  var dayOfWeekIndex = date.getDay()
  var monthIndex = date.getMonth()
  var year = date.getFullYear()

  return dayNames[dayOfWeekIndex] + ' ' + monthNames[monthIndex] + ' ' +  dayOfMonth + ' ' + year;
}

您应该看一下moment.js ,它将在格式化和大量其他日期问题方面为您提供很多帮助。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM