JS获取日期的方法实例【昨天,今天,明天,前n天,后n天的日期】


Posted in Javascript onSeptember 28, 2017

本文实例讲述了JS获取日期的方法。分享给大家供大家参考,具体如下:

原理很简单,一天的时间的毫秒数是1000*60*60*24,

前n天的日期就是现在日期换成毫秒-n*1000*60*60*24。

再把这个值换成日期即可(通过setTime方法)

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
 <head>
 <title>3water.com 日期计算</title>
 <meta name="Generator" content="EditPlus">
 <meta name="Author" content="">
 <meta name="Keywords" content="">
 <meta name="Description" content="">
 </head>
 <body>
 <select id="num" name="num" style="width:150px" onchange="ff()">
        <option value="-1">昨天</option>
        <option value="0">今天</option>
        <option value="1">明天</option>
 </select><br>
 <textarea id="ar" rows="3" cols="20">
 haha
</textarea>
<br/>
<input type="text" value="" name="bday" id="bday"/>天之前
<input type="button" onclick="bday()" value="计算"><br/>
<input type="text" value="" name="aday" id="aday"/>天之后
<input type="button" onclick="aday()" value="计算"><br/>
 </body>
 <script>
 ff();
function ff(){
 var obj=document.getElementById("num");
 var v1=obj.options[obj.selectedIndex].text;
 var v2=obj.options[obj.selectedIndex].value;
 var tvv=giveDateStr(getTargetday(v2));
 document.getElementById('ar').innerText=tvv;
}
function isInteger(obj) {
 var r = /^\+?[1-9][0-9]*$/;//正整数 
 return r.test(obj); 
}
function bday(){
 var bef=document.getElementById("bday").value;
 if(isInteger(bef)){
   var bvv=giveDateStr(getTargetday(-bef));
   document.getElementById('ar').innerText=bvv;
 }else{
   alert("请输入正整数!");
   document.getElementById("bday").value='';
   document.getElementById("bday").focus();
 }
 
}
function aday(){
 var atf=document.getElementById("aday").value;
 if(isInteger(atf)){
   var avv=giveDateStr(getTargetday(atf));
   document.getElementById('ar').innerText=avv;
 }else{
   alert("请输入正整数!");
   document.getElementById("aday").value='';
   document.getElementById("aday").focus();
 }
}
function getTargetday(num){
  var number=null;
  if(num==null||num==0){
   number=0;
  }else{
    number=num;
  }
  var  today=new  Date();
  var  targetday_milliseconds=today.getTime()+1000*60*60*24*number;
  var  targetday=new  Date();
  targetday.setTime(targetday_milliseconds); //注意,这行是关键代码
  return targetday;
}
function giveDateStr(dd){
  var riqiyue=dd.getMonth()+1;
  var riqihao=dd.getDate();
  var riqixingqi=null;
  if(dd.getDay()=='0'){
   xingqi="星期日";
  }else if(dd.getDay()=='1'){
   xingqi='星期一';
  }else if(dd.getDay()=='2'){
   xingqi='星期二';
  }else if(dd.getDay()=='3'){
   xingqi='星期三';
  }else if(dd.getDay()=='4'){
   xingqi='星期四';
  }else if(dd.getDay()=='5'){
   xingqi='星期五';
  }else if(dd.getDay()=='6'){
   xingqi='星期六';
  }
  var riqi=riqiyue+"月"+riqihao+"日"+"("+xingqi+")";
  return riqi;
}
</script>
</html>

运行效果如下:

JS获取日期的方法实例【昨天,今天,明天,前n天,后n天的日期】

PS:这里再为大家推荐几款比较实用的天数计算在线工具供大家使用:

在线日期/天数计算器:
http://tools.3water.com/jisuanqi/date_jisuanqi

在线日期计算器/相差天数计算器:
http://tools.3water.com/jisuanqi/datecalc

在线日期天数差计算器:
http://tools.3water.com/jisuanqi/onlinedatejsq

在线天数计算器:
http://tools.3water.com/jisuanqi/datejsq

希望本文所述对大家JavaScript程序设计有所帮助。

Javascript 相关文章推荐
javascript+css 网页每次加载不同样式的实现方法
Dec 27 Javascript
javascript针对DOM的应用实例(一)
Apr 15 Javascript
js动态生成指定行数的表格
Jul 11 Javascript
jQuery.event兼容各浏览器的event详细解析
Dec 18 Javascript
最精简的JavaScript实现鼠标拖动效果的方法
May 11 Javascript
JavaScript实现数组随机排序的方法
Jun 26 Javascript
实例讲解DataTables固定表格宽度(设置横向滚动条)
Jul 11 Javascript
浅谈webpack打包之后的文件过大的解决方法
Mar 07 Javascript
详解vue的diff算法原理
May 20 Javascript
jQuery+PHP实现上传裁剪图片
Jun 29 jQuery
js实现多张图片每隔一秒切换一张图片
Jul 29 Javascript
vuex的使用步骤
Jan 06 Vue.js
jquery实现左右轮播图效果
Sep 28 #jQuery
bootstrap table实现点击翻页功能 可记录上下页选中的行
Sep 28 #Javascript
JavaScript判断输入是否为数字类型的方法总结
Sep 28 #Javascript
详解Node全局变量global模块
Sep 28 #Javascript
React Native预设占位placeholder的使用
Sep 28 #Javascript
import与export在node.js中的使用详解
Sep 28 #Javascript
AngularJS 仿微信图片手势缩放的实例
Sep 28 #Javascript
You might like
PHP 透明水印生成代码
2012/08/27 PHP
两款万能的php分页类
2015/11/12 PHP
Yii基于数组和对象的Model查询技巧实例详解
2015/12/28 PHP
理解PHP中的Session及对Session有效期的控制
2016/01/08 PHP
PHP简单获取及判断提交来源的方法
2016/04/22 PHP
PHP实现一个多功能购物网站的案例
2017/09/13 PHP
浅析onsubmit校验表单时利用ajax的return false无效问题
2013/07/10 Javascript
JS保留两位小数 四舍五入函数的小例子
2013/11/20 Javascript
使用JQUERY进行后台页面布局控制DIV实现左右式
2014/01/07 Javascript
document.write的几点使用心得
2014/05/14 Javascript
jQuery实现简单的日期输入格式化控件
2015/03/12 Javascript
JS实现的仿东京商城菜单、仿Win右键菜单及仿淘宝TAB特效合集
2015/09/28 Javascript
整理Javascript基础入门学习笔记
2015/11/29 Javascript
jQuery使用正则表达式限制文本框只能输入数字
2016/06/18 Javascript
Jquery组件easyUi实现表单验证示例
2016/08/23 Javascript
javascript表单正则应用
2017/02/04 Javascript
详解vue-cli与webpack结合如何处理静态资源
2017/09/19 Javascript
学习RxJS之JavaScript框架Cycle.js
2019/06/17 Javascript
vue图片裁剪插件vue-cropper使用方法详解
2020/12/16 Vue.js
python使用rsa加密算法模块模拟新浪微博登录
2014/01/22 Python
自己使用总结Python程序代码片段
2015/06/02 Python
Python缩进和冒号详解
2016/06/01 Python
详谈Python3 操作系统与路径 模块(os / os.path / pathlib)
2018/04/26 Python
Python 中的range(),以及列表切片方法
2018/07/02 Python
详解Pandas之容易让人混淆的行选择和列选择
2019/07/10 Python
Pandas之groupby( )用法笔记小结
2019/07/23 Python
Python csv模块使用方法代码实例
2019/08/29 Python
Django restframework 框架认证、权限、限流用法示例
2019/12/21 Python
使用jTopo给Html5 Canva中绘制的元素添加鼠标事件
2014/05/15 HTML / CSS
Cinque网上商店:德国服装品牌
2019/03/17 全球购物
上海天奕面试题笔试题
2015/04/19 面试题
3个CCIE对一个工程师的面试题
2012/05/06 面试题
大学生活感想
2015/08/10 职场文书
创业计划书之书店
2019/09/10 职场文书
我家女友可不止可爱呢 公开OP主题曲无字幕动画MV
2022/04/11 日漫
JavaScript实现音乐播放器
2022/08/14 Javascript