原文:js手写,获取一年中所有周六周日 - 每天一个JavaScript小知识@Js中文网 · 码农进阶题库

原文地址:https://www.javascriptc.com/interview-tips/zh_cn/javascript/array-multiple-intersections/

题目描述:

请写一个方法,获取一年中所有周六周日的日期~

解题:

  • 思路一:
function getMonthLength(date) {
  let d = new Date(date)
  d.setMonth(d.getMonth()+1)
  d.setDate('1')
  d.setDate(d.getDate()-1)
  return d.getDate()
}

var arr =[]
for (var i =1;i<=12;i++ ){
 var days = getMonthLength(`2019-${i}-01`)
 for (var j =1;j<=days;j++ ){
  if(new Date(`2019-${i}-${j}`).getDay() === 0 || new Date(`2019-${i}-${j}`).getDay() === 6){
   console.log(`2019-${i}-${j}`)
   arr.push(`2019-${i}-${j}`)
  }
 }
}
  • 思路二?:

扩展阅读: