亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何在javascript中按日期名稱對數組進行排序?

如何在javascript中按日期名稱對數組進行排序?

慕哥6287543 2023-05-25 17:40:48
我想按日期名稱對我的數組進行排序。這是我的數組中的一個例子,let data = [  {    day: "Saturday"    isOpen: false    description: "07:00 - 18:00 WIB"  },  {    day: "Sunday"    isOpen: false    description: "07:00 - 18:00 WIB"  },  {    day: "Friday"    isOpen: false    description: "07:00 - 18:00 WIB"  }]然后我希望我的陣列是這樣的let data = [  {    day: "Friday"    isOpen: false    description: "07:00 - 18:00 WIB"  },  {    day: "Saturday"    isOpen: false    description: "07:00 - 18:00 WIB"  },  {    day: "Sunday"    isOpen: false    description: "07:00 - 18:00 WIB"  }]我已經閱讀了 javascript 中的排序功能,但我仍然找不到如何按日期名稱排序。我怎樣才能做到這一點?謝謝。
查看完整描述

2 回答

?
交互式愛情

TA貢獻1712條經驗 獲得超3個贊

您可以創建一個數組來維護日期的順序。然后迭代此數組并使用過濾器從數組中獲取匹配的日期data。數組過濾器將返回一個數組,因此使用擴展語法獲取內容并將其推送到sorted數組。

const dateOrder = ['Friday', 'Saturday', 'Sunday']

let data = [{

? ? day: "Saturday",

? ? isOpen: false,

? ? description: "07:00 - 18:00 WIB"

? },

? {

? ? day: "Sunday",

? ? isOpen: false,

? ? description: "07:00 - 18:00 WIB"

? },

? {

? ? day: "Friday",

? ? isOpen: false,

? ? description: "07:00 - 18:00 WIB"

? }

];

let sorted = [];

dateOrder.forEach((item) => {

? sorted.push(...data.filter(elem => elem.day === item));

??

});


console.log(sorted)



查看完整回答
反對 回復 2023-05-25
?
皈依舞

TA貢獻1851條經驗 獲得超3個贊

嘗試這個:

data.sort((a,?b)?=>?a.day>b.day)

這個怎么樣?

let?weekDays?=?{?Mon:?0,?Tue:?1,?Wed:?2,?Thu:?3,?Fri:?4,?Sat:?5,?Sun:?6,?}
data.sort((a,?b)?=>?weekDays[a.day.slice(0,?3)]?>?weekDays[b.day.slice(0,?3)])


查看完整回答
反對 回復 2023-05-25
  • 2 回答
  • 0 關注
  • 131 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號