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的执行顺序 之实战篇
Mar 03 Javascript
JS是按值传递还是按引用传递
Jan 30 Javascript
深入理解JavaScript系列(38):设计模式之职责链模式详解
Mar 04 Javascript
js中对函数设置默认参数值的3种方法
Oct 23 Javascript
详解jQuery uploadify文件上传插件的使用方法
Dec 16 Javascript
JS常见疑难点分析之match,charAt,charCodeAt,map,search用法分析
Dec 25 Javascript
AngularJS 单选框及多选框的双向动态绑定
Apr 20 Javascript
JavaScript定时器setTimeout()和setInterval()详解
Aug 18 Javascript
微信小程序实现图片放大预览功能
Oct 22 Javascript
用Vue编写抽象组件的方法
May 06 Javascript
vue表单数据交互提交演示教程
Nov 13 Javascript
JS动态显示倒计时效果
Dec 12 Javascript
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
discuz 首页四格:最新话题+最新回复+热门话题+精华文章插件
2007/08/19 PHP
[原创]PHP实现逐行删除文件右侧空格的方法
2015/12/25 PHP
关于用Jquery的height()、width()计算动态插入的IMG标签的宽高的问题
2010/12/08 Javascript
jqGrid jQuery 表格插件测试代码
2011/08/23 Javascript
Jquery index()方法 获取相应元素索引值
2012/10/12 Javascript
原生js和jquery中有关透明度设置的相关问题
2014/01/08 Javascript
jquery操作复选框(checkbox)的12个小技巧总结
2014/02/04 Javascript
jquery删除ID为sNews的tr元素的内容
2014/04/10 Javascript
jQuery模拟下拉框选择对应菜单的内容
2017/03/07 Javascript
AngularJs导出数据到Excel的示例代码
2017/08/11 Javascript
JavaScript如何对图片进行黑白化
2018/04/10 Javascript
详解Vue微信授权登录前后端分离较为优雅的解决方案
2018/06/29 Javascript
在Vuex使用dispatch和commit来调用mutations的区别详解
2018/09/18 Javascript
Node.js动手撸一个静态资源服务器的方法
2019/03/09 Javascript
vue实现中部导航栏布局功能
2019/07/30 Javascript
如何实现小程序与小程序之间的跳转
2020/11/04 Javascript
python使用装饰器和线程限制函数执行时间的方法
2015/04/18 Python
Python实现定时任务
2017/02/08 Python
Python多线程及其基本使用方法实例分析
2019/10/29 Python
一波HTML5 Canvas基础绘图实例代码集合
2016/02/28 HTML / CSS
汇集了世界上最好的天然和有机美容产品:LoveLula
2018/02/05 全球购物
匈牙利墨盒和碳粉购买网站:CDRmarket
2018/04/14 全球购物
金融专业个人的自我评价
2013/10/18 职场文书
公司庆典邀请函范文
2014/01/13 职场文书
行政助理工作职责范本
2014/03/04 职场文书
涉密人员保密承诺书
2014/05/28 职场文书
设计大赛策划方案
2014/06/13 职场文书
关于国庆节的演讲稿
2014/09/05 职场文书
2014年社区党建工作汇报材料
2014/11/02 职场文书
体育教师个人工作总结
2015/02/09 职场文书
幼儿园个人总结
2015/02/28 职场文书
2015年基层党支部工作总结
2015/05/21 职场文书
运动员入场前导词
2015/07/20 职场文书
一个成功的互联网创业项目,必须满足这些要求
2019/08/23 职场文书
Python+uiautomator2实现自动刷抖音视频功能
2021/04/29 Python
Python TypeError: ‘float‘ object is not subscriptable错误解决
2022/12/24 Python