今天要用到判断日期是否在同一个星期内和是否在同一个月内,在网上找了好一会儿也没找到合适的,然后自己写了一个方法来处理这个问题,思路就不详细介绍了,直接附上代码,自己测试了一下 没有问题,若有问题请在评论区给我留言\(≧▽≦)/

/*

*判断是否在同一个星期里

*date:时间字符串

*return:true/false

*/

function SameWeek(date) {

var date1 = new Date(date.replace(/-/g, "/"));         //将传入的时间字符串转换成时间对象

var date2 = new Date();     //当前时间

var curWeek = date2.getDay();           //获取当前星期几

var monday = GetDate((curWeek), 1); //计算出星期一

var sunday = GetDate((7 - curWeek), 2); //计算出星期天

if (date1.getTime() < monday.getTime() || date1.getTime() > sunday.getTime()) {

return false;       //不在同一个星期内

} else {

return true;        //在同一个星期内

}

}

/*

*判断是否在同一个月

*date:时间字符串

*return:true/false

*/

function SameMonth(date) {

var date1 = new Date(date.replace(/-/g, "/"));         //将传入的时间字符串转换成时间对象

var date2 = new Date();            //当前时间

var curDay = date2.getDate();           //获取当前几号

var firstDay = GetDate((curDay), 1);                                //计算出当月第一天

var lastDay = GetDate((getDaysInMonth(date2.getFullYear(), date2.getMonth() + 1) - curDay), 2);    //计算出当月最后一天

if (date1.getTime() < firstDay.getTime() || date1.getTime() > lastDay.getTime()) {

return false;       //不在同一个月内

} else {

return true;        //在同一个月内

}

}

/*

*获取某年某月有多少天

*/ function getDaysInMonth(year, month) {

month = parseInt(month, 10) + 1;

var temp = new Date(year + "/" + month + "/0");

return temp.getDate();

}

/*

*获取当前日期前N天或后N日期(N = day)

*type:1:前;2:后

*/

function GetDate(day, type) {

var zdate = new Date();

var edate;

if (type == 1) {

edate = new Date(zdate.getTime() - (day * 24 * 60 * 60 * 1000));

} else {

edate = new Date(zdate.getTime() + (day * 24 * 60 * 60 * 1000));

}

return edate;

}

JS判断日期是否在同一个星期内,和同一个月内的更多相关文章

  1. js 日期比较大小,js判断日期是否在区间内,js判断时间段是否在另外一个时间段内

    /** * 日期解析,字符串转日期 * @param dateString 可以为2017-02-16,2017/02/16,2017.02.16 * @returns {Date} 返回对应的日期对 ...

  2. js 判断日期大小、是否在时间范围内等处理

    var beginval="2015-09-01";//这个时间可以是日期控件选择的,也可以是其他的任何日期时间 var endval="2015-09-01" ...

  3. jq、js判断元素是否在可视区域内

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <style> ...

  4. js判断日期格式(YYYYMM)

    function datepanduan(obj){ var date = document.getElementById(obj.id).value; var reg = /^\b[1-3]\d{3 ...

  5. js 判断当前时间是否处于某个一个时间段内

    js 判断当前时间(或者所选时间)是否在某一时间段 我们可以使用 jutils - JavaScript常用函数库的 isDuringDate 函数来实现 传入 beginDateStr (开始时间) ...

  6. JS实现判断点是否在多边形范围内

    一.说明 在GIS领域,判断点是否在多边形范围内是一个基础方法,这里主要说下实现原理. 原理比较简单,就是有一个GIS理论,一个点向一个方向发送射线,射线与多边形各个边相交的交点如果是奇数说明点在多边 ...

  7. js日期计算及快速获取周、月、季度起止日,获取指定日期周数以及星期几的小例子

    JS获取日期时遇到如下需求,根据某年某周获取一周的日期.如开始日期规定为星期四到下一周的星期五为一周. 格式化日期: function getNowFormatDate(theDate) { var ...

  8. [Ext JS 4] 实战之 带week(星期)的日期选择控件(三)

    前言 在 [Ext JS 4] 实战之 带week(星期)的日期选择控件(二) 的最后,有提到一个解决方案. 不过这方案有一个条件  ==> “2. 每年的周数从(1-52), 如果超过52 周 ...

  9. 自己封装的一个js方法用于获取显示的星期和日期时间

    自己封装的一个js方法用于获取显示的星期和日期时间 /** * 获取用于显示的星期和日期时间 * @param date * @returns {string} */ function getWeek ...

随机推荐

  1. linux命令日常总结

    1.date 显示系统日期2. mkdir xx 创建xx目录 rmdir xx 删除xx目录(空目录) rm -rf xx 删除xx目录(非空目录) 3. vi xx 创建某文件 写入-->e ...

  2. vmware rdm

    RDM即裸磁盘映射,基本思想就是将host的磁盘直接映射给虚拟机使用   需要讨论的是: 1.rdm磁盘是否允许设置为共享,即可以映射给多个虚拟机使用(vmware不可用)   在 vSphere W ...

  3. 阿里云docker镜像加速

    echo "DOCKER_OPTS=\"--registry-mirror=https://yeyieqis.mirror.aliyuncs.com\"" | ...

  4. Virtualbox虚拟机配置CentOS7.0静态网络

    1.首先在Virtualbox下将网络设置为Bridged Adapter,此项设置可以使本机与虚拟机进行互访,而NAT模式只能进行单项访问: 2.先切换到root,配置网卡信息需要用到root,然后 ...

  5. OpenXml Sdk 根据Word模板导出到word

    一:OpenXml Sdk 简介 Open XML标准的简单介绍:Ecma Office Open XML(“Open XML”)是针对字处理文档.演示文稿和电子表格的国际化开放标准,可免费供多个应用 ...

  6. hp安装oracle报错解决

    hpux上安装oracle 11gR2刚开始报错:集群验证框架内部发生了错误 解决办法http://www.it165.net/database/html/201509/14181.html 将文件后 ...

  7. js 斐波那契数列(兔子问题)

    对于JS初学者来说,斐波那契数列一直是个头疼的问题,总是理不清思路. 希望看完这篇文章之后会对你有帮助. 什么是斐波那契数列 : 答: 斐波那契数列,又称黄金分割数列.因数学家列昂纳多·斐波那契(Le ...

  8. opencv 抠图联通块(c接口)

    #include "stdio.h" #include "iostream" #include "opencv/cv.h" #include ...

  9. hdu5219 Repeating

    后缀数组+莫比乌斯函数 #include <stdio.h> #include <string.h> #include<algorithm> using names ...

  10. PeopleSoft Rich Text Boxes上定制Tool Bars

      在使用PT8.50或在8.51时,你可能遇到过Rich-text编辑框.该插件使你能够格式化文本,添加颜色.链接.图片等等.下面是效果图: 如果页面中只有这么一个字段,该文本框就会有足够的空间来容 ...