js 获取当前月和当前周的第一天和最后一天

JavaScript025

js 获取当前月和当前周的第一天和最后一天,第1张

前言:需求里面有,做了就记录一下

第一种:获取当前月 当前周 的第一天 时分秒都为0,最后一天时分秒为23:59:59

ps:如果想获得指定日期的当前周,new Date('2020-1-2') 传参就可以了

//获取当前周

getTime(){

var date = new Date()

// 本周一的日期

date.setDate(date.getDate() - date.getDay() + 1)

var begin = date.getFullYear() + "-" + (date.getMonth() + 1) + "-" + date.getDate() + " 00:00:00"

// 本周日的日期

date.setDate(date.getDate() + 6)

var end = date.getFullYear() + "-" + (date.getMonth() + 1) + "-" + date.getDate() + " 23:59:59"

let timeInfo={

begin:begin,

end:end

}

return timeInfo

}

//获取当前月

getMtime(){

var data=new Date()

data.setDate(1)

data.setHours(0)

data.setSeconds(0)

data.setMinutes(0)

var start = data.getTime()

var currentMonth = data.getMonth()

var nextMonth = ++currentMonth

var nextMonthFirstDay = new Date(

data.getFullYear(),

nextMonth,

1

)

var end = nextMonthFirstDay-1

let timeInfo={

begin: this.timestampToTime(start),//这里调用时间戳转年月日时分秒方法

end: this.timestampToTime(end)

}

return timeInfo

}

//时间戳转年月日时分秒方法

timestampToTime (cjsj) {

var date = new Date(cjsj) //时间戳为10位需*1000,时间戳为13位的话不需乘1000

var Y = date.getFullYear() + '-'

var M = (date.getMonth()+1 <10 ? '0'+(date.getMonth()+1) : date.getMonth()+1) + '-'

var D = (date.getDate() <10 ? '0'+date.getDate() : date.getDate()) + ' '

var h = (date.getHours() <10 ? '0'+date.getHours() : date.getHours()) + ':'

var m = (date.getMinutes() <10 ? '0'+date.getMinutes() : date.getMinutes())+ ':'

var s = (date.getSeconds() <10 ? '0'+date.getSeconds() : date.getSeconds())

return Y+M+D+h+m+s

}

创建一个日期对象,使用new运算符和Date构造方法(构造函数)即可。

Date.parse()和Date.UTC(),返回字符串相对应的毫秒数。

如果Date.parse()没有写入内容或者不是标准的日期格式,那么就会返回NaN。

如果想输出指定的日期,把Date.parse()传入Date构造方法里。

Date.UTC()方法也是返回表示日期的毫秒数,但它与Date.parse()在构建值时使用不同的信息。(年份,基于0的月份[0表示1月,1表示2月],月中的哪一天[1-31],小时数[0-23],分钟,秒以及毫秒)。

只有前两个参数是必须的。如果没有提供月数,则天数为1;如果省略其他参数,则统统为0。

Date类型还有一些专门用于将日期格式化为字符串的方法。

组件方法:是为单独获取想要的时间/日期而提供的方法。(注意:这些方法中,有带UTC的,有不带UTC的。UTC日期指的是在没有时区偏差的情况下的日期值。)

方法名 说明

一共有十个常用的  下面列举出来  

1.new Date() 这个也是必须的如果用到时间的话

2.getFullYear()获取当前年份

3.getMonth()获取当前的月份  但是月份是从0-11算的 所以获取到的月份需要+1

4.getHours()获取当前小时

5.getDate()获取当前日期

6.getMinutes()获取当前分钟

7.getSeconds()获取当前秒

8.getTime()获取当前毫秒值

9.toLocaleString()获取本地的时间格式字符串

10.getDay()获取当前星期   外国星期日为第一天 所以星期日为0  其他的1-6一一对应

<script type="text/javascript">

//Date对象

/* 1.new Date() 获取当前时间

2.getFullYear() 获取年份

3.getMonth() 获取月份  1月表示为0 实际月份比显示月份大1

4.getHours() 获取小时

5.getDate() 获取日期

6.getMinutes() 获取分钟

7.getSeconds() 获取秒

8.getTime() 获取毫秒值

9.toLocaleString() 获取本地的时间格式字符串

10.getDay() 获取星期  外国星期日为第一天 所以星期日为0星期六为6刚好对应*/

var date = new Date()//空参构造显示当前时间

alert(date)

alert(date.getFullYear())

alert(date.getMonth())//计数时 是从0开始算的  到11

alert(date.getHours())

alert(date.getDate())

alert(date.getMinutes())

alert(date.getSeconds())

alert(date.getTime())

alert(date.toLocaleString())

alert(date.getDay())//星期计数0-6  国外 星期日是第一天 所以星期日是0  其他对应1-6

var date2 = new Date(10000000000000)//里面可以加参数  参数是以毫秒为单位的  起始年月从格林尼治时间开始算1970年一月一日

alert(date2.toLocaleString())

</script>