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里的条件判断
Feb 27 Javascript
用cookies实现的可记忆的样式切换效果代码下载
Dec 24 Javascript
两种简单实现菜单高亮显示的JS类代码
Jun 27 Javascript
js 事件截取enter按键页面提交事件示例代码
Mar 04 Javascript
javascript初学者常用技巧
Sep 02 Javascript
JS中使用apply方法通过不同数量的参数调用函数的方法
May 31 Javascript
jQuery实现 上升、下降、删除、添加一行代码
Mar 06 Javascript
JS一个简单的注册页面实例
Sep 05 Javascript
Three.js入门之hello world以及如何绘制线
Sep 25 Javascript
解决vue打包之后静态资源图片失效的问题
Feb 21 Javascript
vue组件的写法汇总
Apr 12 Javascript
浅谈Vuex注入Vue生命周期的过程
May 20 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与SQL注入攻击[一]
2007/04/17 PHP
php xml常用函数的集合(比较详细)
2013/06/06 PHP
PHP删除数组中特定元素的两种方法
2019/02/28 PHP
IE/FireFox具备兼容性的拖动代码
2007/08/13 Javascript
多浏览器兼容性比较好的复制到剪贴板的js代码
2011/10/09 Javascript
在新窗口打开超链接的方法小结
2013/04/14 Javascript
js控制分页打印、打印分页示例
2014/02/08 Javascript
JavaScript更改原始对象valueOf的方法
2015/03/19 Javascript
浅谈angular.js中实现双向绑定的方法$watch $digest $apply
2015/10/14 Javascript
nodejs基础知识
2017/02/03 NodeJs
JavaScript中transform实现数字翻页效果
2017/03/08 Javascript
xmlplus组件设计系列之下拉刷新(PullRefresh)(6)
2017/05/03 Javascript
node.js调用Chrome浏览器打开链接地址的方法
2017/05/17 Javascript
js实现从左向右滑动式轮播图效果
2017/07/07 Javascript
JavaScript学习笔记之函数记忆
2017/09/06 Javascript
Vue.js实现可配置的登录表单代码详解
2018/03/29 Javascript
layui结合form,table的全选、反选v1.0示例讲解
2018/08/15 Javascript
vue之组件内监控$store中定义变量的变化详解
2019/11/08 Javascript
JavaScript实现PC端四格密码输入框功能
2020/02/19 Javascript
python 多线程串行和并行的实例
2019/02/22 Python
python利用selenium进行浏览器爬虫
2019/04/25 Python
python画双y轴图像的示例代码
2019/07/07 Python
Python+Appium实现自动化测试的使用步骤
2020/03/24 Python
查看已安装tensorflow版本的方法示例
2020/04/19 Python
200行python代码实现贪吃蛇游戏
2020/04/24 Python
Omio美国:全欧洲低价大巴、火车和航班搜索和比价
2017/11/08 全球购物
英国信箱在线鲜花速递公司:Bloom & Wild
2019/03/10 全球购物
意大利值得信赖的在线超级药房:PillolaStore
2020/02/05 全球购物
.NET面试题:什么是值类型和引用类型
2016/01/12 面试题
餐饮部总监岗位职责范文
2014/02/13 职场文书
信息科学与技术专业求职信范文
2014/02/20 职场文书
供货协议书范本
2014/04/22 职场文书
村道德模范事迹材料
2014/08/28 职场文书
2015年纪委工作总结
2015/05/13 职场文书
罗马假日观后感
2015/06/08 职场文书
校运会广播稿
2015/08/19 职场文书