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 相关文章推荐
基于jquery的代码显示区域自动拉长效果
Dec 07 Javascript
jquery SweetAlert插件实现响应式提示框
Aug 18 Javascript
浅析node连接数据库(express+mysql)
Nov 30 Javascript
JS自定义函数对web前端上传的文件进行类型大小判断
Oct 19 Javascript
微信小程序 request接口的封装实例代码
Apr 26 Javascript
js 概率计算(简单版)
Sep 12 Javascript
javacript replace 正则取字符串中的值并替换【推荐】
Sep 13 Javascript
js打开word文档预览操作示例【不是下载】
May 23 Javascript
jquery实现垂直无限轮播的方法分析
Jul 16 jQuery
vue实现滑动超出指定距离回顶部功能
Jul 31 Javascript
ionic3双击返回退出应用的方法
Sep 17 Javascript
Jquery让form表单异步提交代码实现
Nov 14 jQuery
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
js下函数般调用正则的方法附代码
2008/06/22 PHP
php+mysqli实现批量替换数据库表前缀的方法
2014/12/29 PHP
PHP遍历数组的方法汇总
2015/04/30 PHP
PHP中is_dir()函数使用指南
2015/05/08 PHP
ThinkPHP中获取指定日期后工作日的具体日期方法
2018/10/14 PHP
setAttribute 与 class冲突解决
2008/02/17 Javascript
js 实现无干扰阴影效果 简单好用(附文件下载)
2009/12/27 Javascript
jquery实现div阴影效果示例代码
2013/09/16 Javascript
Jquery实现自定义窗口随意的拖拽
2014/03/12 Javascript
escape函数解决js中ajax传递中文出现乱码问题
2014/10/30 Javascript
原生js和jquery实现图片轮播特效
2015/04/23 Javascript
jQuery结合CSS制作漂亮的select下拉菜单
2015/05/03 Javascript
JavaScript中使用自然对数ln的方法
2015/06/14 Javascript
12个非常实用的JavaScript小技巧【推荐】
2016/05/18 Javascript
通过AngularJS实现图片上传及缩略图展示示例
2017/01/03 Javascript
详谈JavaScript的闭包及应用
2017/01/17 Javascript
详解如何在vue中使用sass
2017/06/21 Javascript
Angular中封装fancyBox(图片预览)遇到问题小结
2017/09/01 Javascript
JavaScript设计模式之观察者模式(发布订阅模式)原理与实现方法示例
2018/07/27 Javascript
three.js搭建室内场景教程
2018/12/30 Javascript
js实现左右轮播图
2020/01/09 Javascript
js 数组当前行添加数据方法详解
2020/07/28 Javascript
使用vant的地域控件追加全部选项
2020/11/03 Javascript
pyqt5自定义信号实例解析
2018/01/31 Python
python数组循环处理方法
2019/08/26 Python
python实现图片插入文字
2019/11/26 Python
Darphin迪梵官网: 来自巴黎,植物和精油调制的护肤品牌
2016/10/11 全球购物
期末总结的个人自我评价
2013/11/02 职场文书
大学自我鉴定范文
2013/12/26 职场文书
公司委托书怎么写
2014/08/02 职场文书
2015年电厂工作总结范文
2015/05/13 职场文书
行政复议决定书
2015/06/24 职场文书
正规欠条模板
2015/07/03 职场文书
小学生优秀作文范文(六篇)
2019/07/10 职场文书
导游词之澳门玫瑰圣母堂
2019/12/03 职场文书
Pandas-DataFrame知识点汇总
2022/03/16 Python