javascript - 使用矩了解特定日期的数字类型的日和月

标签 javascript date momentjs

我有一个格式为“YYYY/MM/DD”的日期数组,例如: 日期Arr = [2018-06-09, 2018-06-10]。我想创建两个数组,每个数组包含特定日期的月份,另一个数组包含数字形式的特定日期的天数。 天数为:

const daysToNumbers = {
  Sunday: 0,
  Monday: 1,
  Tuesday: 2,
  Wednesday: 3,
  Thursday: 4,
  Friday: 5,
  Saturday: 6
};

和月份:

const daysToMonths = {
      Januray: 0,
      February: 1,
      March: 2,
      April: 3,
      May: 4,
      June: 5,
      July: 6,
      August: 7,
      September: 8,
      October: 9,
      November: 10,
      December: 11
    };

例如,第一个数组包含这样的日期:[6, 0] 和这样的月份:[5,5] 我认为 moment.js 有一些功能,例如日期或月份,但它似乎不起作用

最佳答案

在原始数组上使用 Array#map 将项目转换为 moment 对象,然后使用 get() 方法检索日期的相应组成部分:

const dateArr = ['2018-06-09', '2018-06-10'];
const momentArr = dateArr.map(item => moment(item));
const monthArr = momentArr.map(item => item.get('month'));
const dayArr = momentArr.map(item => item.get('day'));

console.log(monthArr, dayArr);
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.22.1/moment.min.js"></script>

关于javascript - 使用矩了解特定日期的数字类型的日和月,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50775033/

相关文章:

javascript - 纯 JavaScript/Ajax 从多个外部文件获取内容并将它们附加到各自的 div

javascript - 向元素添加函数时保留 "i"值

testing - Selenium IDE : How do I get today's date?

postgresql:在重叠处拆分时间段

python - 根据日期范围添加列值(if-else)

javascript - moment js 为 iso 时间戳返回格式错误的值

momentjs - moment.isSame() 是否适用于带时区的时刻

javascript - $(window).height() 在 iPad 全屏网络应用程序中不起作用

javascript - oidc-client-js 没有从 Identity Server 4 正确获取声明

javascript - 使用moment.js转换日期格式