为了账号安全,请及时绑定邮箱和手机立即绑定

根据工作日数获取工作日数组

根据工作日数获取工作日数组

呼唤远方 2022-07-15 09:45:33
例如,如果我将周数传递为 3,我希望将数组排序为weekStartDayNumber = 3weekdays = ['wednesday', 'thursday', 'friday', 'saturday', 'sunday', 'monday', 'tuesday']如果我通过 week weekStartDayNumber 为 7 我希望数组按如下方式排序weekdays = ['sunday',...'saturday']该数组需要根据 weekStartDayNumber 进行排序。function days(weekStartDayNumber) { //logic here}
查看完整描述

4 回答

?
慕尼黑的夜晚无繁华

TA贡献1864条经验 获得超6个赞

const weekDays = ['monday', 'tuesday','wednesday', 'thursday', 'friday', 'saturday', 'sunday']


const days = (n) =>

  // Splice will take out everything from where ever you want to start until 

  // the end of the array and remove that part from the original. So

  // weekdays only contains whatever is left. So simply add the rest

  // using concat

  weekDays.splice(n - 1, weekDays.length - n + 1).concat(weekDays);


查看完整回答
反对 回复 2022-07-15
?
慕田峪4524236

TA贡献1875条经验 获得超5个赞

let a = function SortByDay(startNum) {

    let weekDays = ['monday', 'tuesday', 'wednesday', 'thursday', 'friday', 'saturday', 'sunday']

    return weekDays

        .slice(startNum - 1)

        .concat(weekDays

        .slice(0, startNum - 1));

};


查看完整回答
反对 回复 2022-07-15
?
qq_遁去的一_1

TA贡献1725条经验 获得超8个赞

const days = (n) => [...weekdays.slice(n-1), ...weekdays.slice(0, n-1)]

这应该做你需要的。一个不错的小 ES6 单线。


查看完整回答
反对 回复 2022-07-15
?
心有法竹

TA贡献1866条经验 获得超5个赞

使用Array.slice():


function arrangeDays(startNum) {

    let days = ['monday', 'tuesday','wednesday', 'thursday', 'friday', 'saturday', 'sunday']

    let arrStart = days.slice(startNum-1)

    let arrEnd = days.slice(0, startNum-1)


    return arrStart.concat(arrEnd)

}


console.log(arrangeDays(3))

console.log(arrangeDays(7))


查看完整回答
反对 回复 2022-07-15
  • 4 回答
  • 0 关注
  • 228 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号