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 相关文章推荐
IE6/7 and IE8/9/10(IE7模式)依次隐藏具有absolute或relative的父元素和子元素后再显示父元素
Jul 31 Javascript
js判断浏览器类型为ie6时不执行
Jun 15 Javascript
Bootstrap安装环境配置教程分享
May 27 Javascript
javascript使用递归算法求两个数字组合功能示例
Jan 03 Javascript
canvas实现图像布局填充功能
Feb 06 Javascript
JavaScript运动框架 多物体任意值运动(三)
May 17 Javascript
关于JavaScript中forEach和each用法浅析
Jul 27 Javascript
JavaScript学习笔记之基于定时器实现图片无缝滚动功能详解
Jan 09 Javascript
记录一次完整的react hooks实践
Mar 11 Javascript
jquery实现商品sku多属性选择功能(商品详情页)
Dec 20 jQuery
JSON 入门教程基础篇 json入门学习笔记
Sep 22 Javascript
小程序组件传值和引入sass的方法(使用vant Weapp组件库)
Nov 24 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 不错的学习资料
2009/02/06 PHP
PHP 面向对象程序设计(oop)学习笔记(一) - 抽象类、对象接口、instanceof 和契约式编程
2014/06/12 PHP
在WordPress中使用PHP脚本来判断访客来自什么国家
2015/12/10 PHP
Laravel 创建指定表 migrate的例子
2019/10/09 PHP
jquery offset函数应用实例
2012/11/14 Javascript
js实现下拉框选择要显示图片的方法
2015/02/16 Javascript
jQuery+jRange实现滑动选取数值范围特效
2015/03/14 Javascript
使用jquery动态加载Js文件和Css文件
2015/10/24 Javascript
详解javascript高级定时器
2015/12/31 Javascript
使用jQuery制作Web页面遮罩层插件的实例教程
2016/05/26 Javascript
angular+ionic返回上一页并刷新页面
2017/08/08 Javascript
200行代码实现blockchain 区块链实例详解
2018/03/14 Javascript
详解vantUI框架在vue项目中的应用踩坑
2018/12/06 Javascript
koa2的中间件功能及应用示例
2020/03/05 Javascript
JavaScript中变量提升和函数提升的详解
2020/08/07 Javascript
JavaScript arguments.callee作用及替换方案详解
2020/09/02 Javascript
python小技巧之批量抓取美女图片
2014/06/06 Python
python使用多线程不断刷新网页的方法
2015/03/31 Python
基于python3实现socket文件传输和校验
2018/07/28 Python
python2 与 pyhton3的输入语句写法小结
2018/09/10 Python
Python 给某个文件名添加时间戳的方法
2018/10/16 Python
windows下搭建python scrapy爬虫框架步骤
2018/12/23 Python
三步实现Django Paginator分页的方法
2019/06/11 Python
django中related_name的用法说明
2020/05/20 Python
Python函数必须先定义,后调用说明(函数调用函数例外)
2020/06/02 Python
分布式全文检索引擎ElasticSearch原理及使用实例
2020/11/14 Python
html5组织内容_动力节点Java学院整理
2017/07/10 HTML / CSS
美国汽车轮胎和轮毂销售网站:Tire Rack
2018/01/11 全球购物
湖南卫视在线视频媒体平台:芒果TV
2019/10/30 全球购物
幼儿园毕业家长感言
2014/02/10 职场文书
高中竞选班长演讲稿
2014/04/24 职场文书
社团活动总结报告
2014/06/27 职场文书
2014教师教育实践活动对照检查材料思想汇报
2014/09/21 职场文书
2015国际残疾人日活动总结
2015/03/24 职场文书
python字符串拼接.join()和拆分.split()详解
2021/11/23 Python
《极主夫道》真人电影正式预告 定档6月3日上映
2022/04/05 日漫