3

所以我有一个包含数据的数组

var today = "2020-08-31"
var array = [
{
  name: "Joshua", 
  id: 1, 
  date: "2020-08-31"
}, 
{
  name: "Michael", 
  id: 2, 
  date: "2020-09-1"
}]

我想创建一个sectionListsectionHeader 标题将取决于今天的日期,并将其与数组中的日期值进行比较。例如,数组中的日期为“2020-08-31”,今天的日期与“2020-08-31”相同,标题应为“今天”,明天为“2020-09-01”,日期为数组仍然是“2020-08-31”标题应该是“昨天”有可能吗?请帮我。我坚持这一点。谢谢!!!!

4

1 回答 1

0

使用 JS Date 库中的 parse 函数来解析日期,从而将其转换为 long,然后返回字符串(昨天、今天、明天)。

将 displayDate 添加到您的数组中,以便循环并显示该字段的值。

const today = "2020-08-31"
let array = [{
    name: "Joshua",
    id: 1,
    date: "2020-08-31"
  },
  {
    name: "Michael",
    id: 2,
    date: "2020-09-1"
  }
]

array = array.map(x => ({
  ...x,
  displayDate: (() => {
    if (Date.parse(today) < Date.parse(x.date)) {
      return 'yesterday';
    } else if (Date.parse(today) > Date.parse(x.date)) {
      return 'tomorrow';
    }
    return 'today';
  })()
}));

console.log(array)

于 2020-08-31T22:37:17.103 回答