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 相关文章推荐
基于Jquery与WebMethod投票功能实现代码
Jan 19 Javascript
js 异步操作回调函数如何控制执行顺序
Dec 24 Javascript
Javascript中的包装类型介绍
Apr 02 Javascript
js实现精美的图片跟随鼠标效果实例
May 16 Javascript
详解用原生JavaScript实现jQuery的某些简单功能
Dec 19 Javascript
Ajax和Comet技术总结
Feb 19 Javascript
jQuery插件ImgAreaSelect实现头像上传预览和裁剪功能实例讲解一
May 26 jQuery
详解一个小实例理解js原型和继承
Apr 24 Javascript
微信小程序的mpvue框架快速上手指南
May 15 Javascript
Echarts实现多条折线可拖拽效果
Dec 19 Javascript
如何在 ant 的table中实现图片的渲染操作
Oct 28 Javascript
Nest.js环境变量配置与序列化详解
Feb 21 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
Classes and Objects in PHP5-面向对象编程 [1]
2006/10/09 PHP
PHP生成和获取XML格式数据的方法
2016/03/04 PHP
jQuery控制图片的hover效果(smartRollover.js)
2012/03/18 Javascript
JS中setTimeout()的用法详解
2013/04/14 Javascript
jQuery当鼠标悬停时放大图片的效果实例
2013/07/03 Javascript
jquery.autocomplete修改实现键盘上下键自动填充示例
2013/11/19 Javascript
jquery实现聚光灯效果的方法
2015/02/06 Javascript
JS数组的常见用法实例
2015/02/10 Javascript
jQuery实现contains方法不区分大小写的方法
2015/02/13 Javascript
JavaScript的事件代理和委托实例分析
2015/03/25 Javascript
原生js和jquery实现图片轮播淡入淡出效果
2015/04/23 Javascript
jQuery简单实现仿京东商城的左侧菜单效果代码
2015/09/09 Javascript
14 个折磨人的 JavaScript 面试题
2016/08/08 Javascript
knockoutjs动态加载外部的file作为component中的template数据源的实现方法
2016/09/01 Javascript
js利用for in循环获取 一个对象的所有属性以及值的实例
2017/03/30 Javascript
node.js+jQuery实现用户登录注册AJAX交互
2017/04/28 jQuery
Vue 组件间的样式冲突污染
2017/08/31 Javascript
微信小程序实现搜索指定景点周边美食、酒店
2019/05/18 Javascript
解决js中的setInterval清空定时器不管用问题
2020/11/17 Javascript
[47:42]完美世界DOTA2联赛PWL S2 GXR vs Ink 第一场 11.19
2020/11/20 DOTA
使用Python生成随机密码的示例分享
2016/02/18 Python
Python中使用logging和traceback模块记录日志和跟踪异常
2019/04/09 Python
Python解压 rar、zip、tar文件的方法
2019/11/19 Python
win10安装tesserocr配置 Python使用tesserocr识别字母数字验证码
2020/01/16 Python
python3利用Axes3D库画3D模型图
2020/03/25 Python
解决Jupyter Notebook使用parser.parse_args出现错误问题
2020/04/20 Python
python requests包的request()函数中的参数-params和data的区别介绍
2020/05/05 Python
俄罗斯玩具、儿童用品、儿童服装和鞋子网上商店:MyToys.ru
2019/10/14 全球购物
美国排名第一的葡萄酒俱乐部:Firstleaf Wine Club
2020/01/02 全球购物
Hibernate持久层技术
2013/12/16 面试题
平面设计师工作职责范文
2013/12/03 职场文书
演讲稿怎么写才完美
2014/01/02 职场文书
南京导游词
2015/02/03 职场文书
小学教师暑期培训心得体会
2016/01/09 职场文书
「月刊Comic Alive」2022年5月号封面公开
2022/03/21 日漫
PostgreSQL事务回卷实战案例详析
2022/03/25 PostgreSQL