编程语言
首页 > 编程语言> > JavaScript:将日/周转换为年份

JavaScript:将日/周转换为年份

作者:互联网

我已经使用Stack Overflow几个月了,但这是我的第一篇文章.

我需要一个函数将周数和星期几转换为dd / mm / yyyy格式.

我必须使用的日期值采用格式day / weekNumber.例如:3/43转换为20XX 10月24日星期三.年份值将是当前年份.

日期值从1(星期一)开始.

我在互联网上找到了很多功能(例如this,thisthis).有些人使用ISO 8601日期,我认为这对我不起作用.我还没有找到一个适合我的方法.

提前致谢,

解决方法:

这个解决方案确实需要添加额外的库,但我认为它确实值得.它是一个用于操纵日期和时间的momentjs库.它是积极维护的,并且有一个很好的documentation.一旦你得到day和weekNumber的值(在我们的例子3和43),你应该做如下:

function formatInput(day, weekNumber){

    var currentDate = moment(new Date());     // initialize moment to a current date
    currentDate.startOf('year');              // set to Jan 1 12:00:00.000 pm this year
    currentDate.add('w',weekNumber - 1);      // add number of weeks to the beginning of the year (-1 because we are now at the 1st week)
    currentDate.day(day);                     // set the day to the specified day, Monday being 1, Sunday 7

    alert(currentDate.format("dddd, MMMM Do YYYY"));  // return the formatted date string 
    return currentDate.format("dddd, MMMM Do YYYY");
}

我认为这个库以后可能对你有用,并且有很多关于日期和时间操作的可能性,以及格式化选项.还有一个伟大的文档为momentjs写.

标签:dayofweek,javascript,function,date,week-number
来源: https://codeday.me/bug/20190901/1784794.html