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 相关文章推荐
js 蒙版进度条(结合图片)
Mar 10 Javascript
javascript操作cookie的文章(设置,删除cookies)
Apr 01 Javascript
JS重要知识点小结
Nov 06 Javascript
from 表单提交返回值用post或者是get方法实现
Aug 21 Javascript
jquery滚动条插件(可以自定义)
Dec 11 Javascript
jQuery自定义插件详解及实例代码
Dec 29 Javascript
Vue中fragment.js使用方法详解
Mar 09 Javascript
详解Vue 实例中的生命周期钩子
Mar 21 Javascript
js实现分页功能
May 24 Javascript
微信小程序中实现手指缩放图片的示例代码
Mar 13 Javascript
vue2.0 + ele的循环表单及验证字段方法
Sep 18 Javascript
浅谈javascript如何获取文件后缀名
Aug 07 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 无法载入mysql扩展
2010/03/12 PHP
基于python发送邮件的乱码问题的解决办法
2013/04/25 PHP
thinkphp框架实现数据添加和显示功能
2016/06/29 PHP
PHP PDOStatement::nextRowset讲解
2019/02/01 PHP
ThinkPHP 5.1 跨域配置方法
2019/10/11 PHP
学习jquery之一
2007/04/27 Javascript
js下获得客户端操作系统的函数代码(1:vista,2:windows7,3:2000,4:xp,5:2003,6:2008)
2011/10/31 Javascript
jsp网页搜索结果中实现选中一行使其高亮
2014/02/17 Javascript
sails框架的学习指南
2014/12/22 Javascript
JavaSciprt中处理字符串之sup()方法的使用教程
2015/06/08 Javascript
jquery实现用户信息修改验证输入方法汇总
2015/07/18 Javascript
AngularJs学习第八篇 过滤器filter创建
2016/06/08 Javascript
layui文件上传实现代码
2017/05/20 Javascript
详解Angular之constructor和ngOnInit差异及适用场景
2017/06/22 Javascript
Angularjs的启动过程分析
2017/07/18 Javascript
JavaScript基础之静态方法和实例方法分析
2018/12/26 Javascript
详解Vue依赖收集引发的问题
2019/04/22 Javascript
layui自定义ajax左侧三级菜单
2019/07/26 Javascript
Vue使用vue-recoure + http-proxy-middleware + vuex配合promise实现基本的跨域请求封装
2019/10/21 Javascript
js实现无缝轮播图
2020/03/09 Javascript
[42:20]Secret vs Liquid 2019国际邀请赛小组赛 BO2 第二场 8.15
2019/08/17 DOTA
Python使用MySQLdb for Python操作数据库教程
2014/10/11 Python
django模型中的字段和model名显示为中文小技巧分享
2014/11/18 Python
快速入手Python字符编码
2016/08/03 Python
Python中.join()和os.path.join()两个函数的用法详解
2018/06/11 Python
Python使用matplotlib实现交换式图形显示功能示例
2019/09/06 Python
利用CSS3的flexbox实现水平垂直居中与三列等高布局
2016/09/12 HTML / CSS
Lentiamo丹麦:购买便宜的隐形眼镜
2021/01/13 全球购物
文言文形式的学生求职信
2013/12/03 职场文书
会计与出纳自荐书范文
2014/03/16 职场文书
酒店管理求职信
2014/06/09 职场文书
2014年煤矿工人工作总结
2014/12/08 职场文书
元宵节寄语大全
2015/02/27 职场文书
怀孕辞职信怎么写
2015/02/28 职场文书
解决pytorch读取自制数据集出现过的问题
2021/05/31 Python
python中filter,map,reduce的作用
2022/06/10 Python