JS实现时间校验的代码


Posted in Javascript onMay 25, 2020
  1. 常用于活动时间结束弹窗提示
  2. 注意:

1.只是JS校验时间提示,并不安全
2.前台页面的时间校验不影响后台,所以,当用户修改本地计算机时间时,可能存在不安全因素

1、直接看代码

var mydate = new Date();
var date = myDate();

function activeData(){
  if(!isDateBetween(date,'2018/01/30','2018/03/31')){
    //在有效时间,对应处理逻辑
  }else{
    //不在有效时间,对应处理逻辑
  }
}

function dateParse(dateString){ 
  var SEPARATOR_BAR = "-"; 
  var SEPARATOR_SLASH = "/"; 
  var SEPARATOR_DOT = "."; 
  var dateArray; 
  if(dateString.indexOf(SEPARATOR_BAR) > -1){ 
    dateArray = dateString.split(SEPARATOR_BAR);  
  }else if(dateString.indexOf(SEPARATOR_SLASH) > -1){ 
    dateArray = dateString.split(SEPARATOR_SLASH); 
  }else{ 
    dateArray = dateString.split(SEPARATOR_DOT); 
  } 
  return new Date(dateArray[0], dateArray[1]-1, dateArray[2]);  
}; 

function dateCompare(dateString, compareDateString){  
  var dateTime = dateParse(dateString).getTime(); 
  var compareDateTime = dateParse(compareDateString).getTime(); 
  if(compareDateTime > dateTime){ 
    return 1; 
  }else if(compareDateTime == dateTime){ 
    return 0; 
  }else{ 
    return -1; 
  } 
};


function isDateBetween(dateString, startDateString, endDateString){ 
  var flag = false; 
  var startFlag = (dateCompare(dateString, startDateString) < 1); 
  var endFlag = (dateCompare(dateString, endDateString) > -1); 
  if(startFlag && endFlag){ 
    flag = true; 
  } 
  return flag; 
};

function myDate(){

  // 对Date的扩展,将 Date 转化为指定格式的String
  // 月(M)、日(d)、小时(h)、分(m)、秒(s)、季度(q) 可以用 1-2 个占位符,
  // 年(y)可以用 1-4 个占位符,毫秒(S)只能用 1 个占位符(是 1-3 位的数字)
  // 例子:
  // (new Date()).Format("yyyy-MM-dd hh:mm:ss.S") ==> 2006-07-02 08:09:04.423
  // (new Date()).Format("yyyy-M-d h:m:s.S") ==> 2006-7-2 8:9:4.18
  Date.prototype.Format = function(fmt)  
  { // author: meizz
  var o = {  
   "M+" : this.getMonth()+1,         // 月份
   "d+" : this.getDate(),          // 日
   "h+" : this.getHours(),          // 小时
   "m+" : this.getMinutes(),         // 分
   "s+" : this.getSeconds(),         // 秒
   "q+" : Math.floor((this.getMonth()+3)/3), // 季度
   "S" : this.getMilliseconds()       // 毫秒
  };  
  if(/(y+)/.test(fmt))  
   fmt=fmt.replace(RegExp.$1, (this.getFullYear()+"").substr(4 - RegExp.$1.length));  
  for(var k in o)  
   if(new RegExp("("+ k +")").test(fmt))  
  fmt = fmt.replace(RegExp.$1, (RegExp.$1.length==1) ? (o[k]) : (("00"+ o[k]).substr((""+ o[k]).length)));  
  return fmt;  
  } 

  var nowDate = new Date().Format("yyyy-MM-dd");
  return nowDate;
};

2、例子效果图

JS实现时间校验的代码

总结

到此这篇关于JS实现时间校验的代码的文章就介绍到这了,更多相关js 时间校验内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Javascript 相关文章推荐
关于JavaScript的gzip静态压缩方法
Jan 05 Javascript
利用js获取服务器时间的两个简单方法
Jan 08 Javascript
textarea中的手动换行处理的jquery代码
Feb 26 Javascript
JS上传图片前的限制包括(jpg jpg gif及大小高宽)等
Dec 19 Javascript
javascript之典型高阶函数应用介绍
Jan 10 Javascript
js操作iframe父子窗体示例
May 22 Javascript
jQuery 生成svg矢量二维码
Aug 09 Javascript
jQuery表单验证简单示例
Oct 17 Javascript
vue.js 获取当前自定义属性值
Jun 01 Javascript
vue实现分环境打包步骤(给不同的环境配置相对应的打包命令)
Jun 04 Javascript
在vue中封装的弹窗组件使用队列模式实现方法
Jul 23 Javascript
js实现微信聊天效果
Aug 09 Javascript
使用Typescript和ES模块发布Node模块的方法
May 25 #Javascript
js 动态校验开始结束时间的实现代码
May 25 #Javascript
使用 Opentype.js 生成字体子集的实例代码详解
May 25 #Javascript
Node.js API详解之 repl模块用法实例分析
May 25 #Javascript
微信小程序仿抖音视频之整屏上下切换功能的实现代码
May 24 #Javascript
如何使用vue slot创建一个模态框的实例代码
May 24 #Javascript
使用React代码动态生成栅格布局的方法
May 24 #Javascript
You might like
用PHP和ACCESS写聊天室(八)
2006/10/09 PHP
php 购物车的例子
2009/05/04 PHP
PHP XML操作的各种方法解析(比较详细)
2010/06/17 PHP
PHP错误WARNING: SESSION_START() [FUNCTION.SESSION-START]解决方法
2014/05/04 PHP
PHP实现双链表删除与插入节点的方法示例
2017/11/11 PHP
JavaScript中的集合及效率
2010/01/08 Javascript
jQuery下通过$.browser来判断浏览器.
2011/04/05 Javascript
javascript禁制后退键(Backspace)实例代码
2013/11/15 Javascript
深入理解JavaScript编程中的原型概念
2015/06/25 Javascript
使用JavaScript和CSS实现文本隔行换色的方法
2015/11/04 Javascript
jQuery异步提交表单的两种方式
2016/09/13 Javascript
关于Javascript中defer和async的区别总结
2016/09/20 Javascript
JavaScript实现星级评分
2017/01/12 Javascript
提高JavaScript执行效率的23个实用技巧
2017/03/01 Javascript
bootstrap轮播图示例代码分享
2017/05/17 Javascript
Vue2.x通用编辑组件的封装及应用详解
2019/05/28 Javascript
Python中列表、字典、元组、集合数据结构整理
2014/11/20 Python
Python内置函数之filter map reduce介绍
2014/11/30 Python
python获得一个月有多少天的方法
2015/06/04 Python
在java中如何定义一个抽象属性示例详解
2017/08/18 Python
对matplotlib改变colorbar位置和方向的方法详解
2018/12/13 Python
解决Python pip 自动更新升级失败的问题
2020/02/21 Python
python opencv pytesseract 验证码识别的实现
2020/08/28 Python
Finishline官网:美国一家领先的运动品牌鞋类、服装零售商
2016/07/20 全球购物
简单的JAVA编程面试题
2013/03/19 面试题
vue 中 get / delete 传递数组参数方法
2021/03/23 Vue.js
党校自我鉴定范文
2013/10/02 职场文书
分公司经理岗位职责
2013/11/11 职场文书
高中军训第一天感言
2014/03/06 职场文书
暑期培训随笔感言
2014/03/10 职场文书
毕业生就业意向书
2014/04/01 职场文书
幼儿园教师的考核评语
2014/04/18 职场文书
国庆节慰问信
2015/02/15 职场文书
祝福语集锦:朋友新店开业祝福语
2019/12/10 职场文书
zabbix自定义监控nginx状态实现过程
2021/11/01 Servers
JavaScript实例 ODO List分析
2022/01/22 Javascript