js实现日期显示的一些操作
1、js获取当前日期(yyyy-mm-dd)
以下代码是获取到的当前日期:
var myDate = new Date();
var year = myDate.getFullYear(); //获取完整的年份(4位,1970-????)
var month = myDate.getMonth()+1; //获取当前月份(1-12)
var day = myDate.getDate(); //获取当前日(1-31)
//获取完整年月日
var newDay = year + “-” + month + “-” + day;

2、点击实现日期的天数加减(yyyy-mm-dd)
点击俩个按钮分别可以实现日期的加减,如果本月天数达到最多,那么月份将会自动增加或减少
var n = 0;
dayChange(0)
$("#time-add").click(function(){
n++;
dayChange(n);
})
$("#time-less").click(function(){
n--;
dayChange(n);
})
function dayChange(n){
var now = new Date();//今天
var tomo = new Date((now/1000+86400*n)*1000);//明天
var month = tomo.getMonth() + 1;
var strDate = tomo.getDate();
var seperator1 = "-";
if (month >= 1 && month <= 9) {
month = "0" + month;
}
if (strDate >= 0 && strDate <= 9) {
strDate = "0" + strDate;
}
var currentdate = tomo.getFullYear() + seperator1 + month + seperator1 + strDate;
$(".center-day").html(currentdate);
}

3、获取当前本周周一和本周周日的时间范围
不管当前是周几,都可以获取到当前所在这一周的起始时间
var now = new Date();//今天
week(now);
function week(now){
var nowTime = now.getTime() ;
var day = now.getDay();
var oneDayLong = 24*60*60*1000 ;
//获取本周所在周一
var MondayTime = nowTime - (day-1)*oneDayLong ;
//获取本周所在周末
var SundayTime = nowTime + (7-day)*oneDayLong ;
//转化日期
var monday = new Date(MondayTime);
var sunday = new Date(SundayTime);
var month = monday.getMonth() + 1;
var strDate = monday.getDate();
var month1 = sunday.getMonth() + 1;
var strDate1 = sunday.getDate();
if (month >= 1 && month <= 9) {
month = "0" + month;
}
if (month1 >= 1 && month1 <= 9) {
month1 = "0" + month1;
}
if (strDate >= 0 && strDate <= 9) {
strDate = "0" + strDate;
}
if (strDate1 >= 0 && strDate1 <= 9) {
strDate1 = "0" + strDate1;
}
currentdate = monday.getFullYear() + seperator1 + month + seperator1 + strDate + "至" + sunday.getFullYear() + seperator1 + month1 + seperator1 + strDate1;
$(".center-day").html(currentdate);
}

4、点击实现每周范围的变化
点击改变的按钮将会改变显示一周范围的改变,如果有的在下一月或者下一年,那么将会自动显示,不会出现错误
var now = new Date();//今天
var n = 0;
week(now);
$("#week-add").click(function(){
n++;
var date = new Date(now.getTime() + n*7*24*3600*1000);
week(date);
})
$("#week-add").click(function(){
n--;
var date = new Date(now.getTime() + n*7*24*3600*1000);
week(date);
})
function week(now){
var nowTime = now.getTime() ;
var day = now.getDay();
var oneDayLong = 24*60*60*1000 ;
//获取本周所在周一
var MondayTime = nowTime - (day-1)*oneDayLong ;
//获取本周所在周末
var SundayTime = nowTime + (7-day)*oneDayLong ;
//转化日期
var monday = new Date(MondayTime);
var sunday = new Date(SundayTime);
var month = monday.getMonth() + 1;
var strDate = monday.getDate();
var month1 = sunday.getMonth() + 1;
var strDate1 = sunday.getDate();
if (month >= 1 && month <= 9) {
month = "0" + month;
}
if (month1 >= 1 && month1 <= 9) {
month1 = "0" + month1;
}
if (strDate >= 0 && strDate <= 9) {
strDate = "0" + strDate;
}
if (strDate1 >= 0 && strDate1 <= 9) {
strDate1 = "0" + strDate1;
}
currentdate = monday.getFullYear() + seperator1 + month + seperator1 + strDate + "至" + sunday.getFullYear() + seperator1 + month1 + seperator1 + strDate1;
$(".center-day").html(currentdate);
}

5、获取当前月份的第一天和最后一天
能够获取到当前所在月份的第一天和最后一天,最后一天的日期是不固定的,能够获取到应有的日期
monthfen(0)
function monthfen(n){
var now = new Date();//今天
var firstDate = new Date((now/1000+86400*n*now.getDate())*1000);//明天
//本月第一天
firstDate.setDate(1); //第一天
var date = new Date(firstDate);
8 var month = date.getMonth() + 1;
var strDate = "0" + date.getDate();
//本月最后一天
11 var endDate = new Date(firstDate);
12 endDate.setMonth(firstDate.getMonth()+1);
13 endDate.setDate(0);
var date1 = new Date(endDate);
15 var month1 = date1.getMonth() + 1;
var strDate1 = date1.getDate();
if (month >= 1 && month <= 9) {
month = "0" + month;
}
if (month1 >= 1 && month1 <= 9) {
month1 = "0" + month1;
}
currentdate = date.getFullYear() + seperator1 + month + seperator1 + strDate + "至" + date1.getFullYear() + seperator1 + month1 + seperator1 + strDate1;
$(".center-day").html(currentdate);
}

6、点击实现当前月份的改变
点击按钮会实现当前月份的改变,那么最后一天的日期也会自动改变,
monthfen(0)
var n = 0;
$("#month-add").click(function(){
n++;
monthfen(n);
})
$("#month-less").click(function(){
n--;
monthfen(n);
})
function monthfen(n){
var now = new Date();//今天
var firstDate = new Date((now/1000+86400*n*now.getDate())*1000);//明天
//本月第一天
firstDate.setDate(1); //第一天
var date = new Date(firstDate);
17 var month = date.getMonth() + 1;
18 var strDate = "0" + date.getDate();
//本月最后一天
var endDate = new Date(firstDate);
endDate.setMonth(firstDate.getMonth()+1);
endDate.setDate(0);
var date1 = new Date(endDate);
var month1 = date1.getMonth() + 1;
var strDate1 = date1.getDate();
if (month >= 1 && month <= 9) {
month = "0" + month;
}
if (month1 >= 1 && month1 <= 9) {
month1 = "0" + month1;
}
currentdate = date.getFullYear() + seperator1 + month + seperator1 + strDate + "至" + date1.getFullYear() + seperator1 + month1 + seperator1 + strDate1;
$(".center-day").html(currentdate);
}
当然还有很多关于日期格式的改变和算法,如果有什么不理解的可以留下评论,大家一起探讨。
js实现日期显示的一些操作的更多相关文章
- Js获取日期时间及其它操作
var myDate = new Date();myDate.getYear(); //获取当前年份(2位)myDate.getFullYear(); //获取完整的年份(4位,1 ...
- JS对日期时间的操作
代码: //判断是否超期(有效期开始超过一年后算已超期) function IsEffect(effectDate) { var val = ""; var currentDate ...
- 【转】Js获取当前日期时间及其它操作
Js获取当前日期时间及其它操作 原文地址:http://www.cnblogs.com/carekee/articles/1678041.html var myDate = new Date();my ...
- [转]Js获取当前日期时间及其它操作
转载自:http://www.cnblogs.com/carekee/articles/1678041.html Js获取当前日期时间及其它操作 var myDate = new Date();myD ...
- Js 获取当前日期时间及其它操作(转)
Js获取当前日期时间及其它操作 var myDate = new Date();myDate.getYear(); //获取当前年份(2位)myDate.getFullYear(); ...
- Js获取当前日期时间及其它操作
Js获取当前日期时间及其它操作var myDate = new Date();myDate.getYear(); //获取当前年份(2位)myDate.getFullYear(); //获取完整的年份 ...
- iOS不得姐项目--精华模块上拉下拉的注意事项,日期显示,重构子控制器,计算cell的高度(只计算一次),图片帖子的显示
一.上拉下拉注意事项 使用MJRefresh中的上拉控件自动设置透明 当请求下页数据通过page的时候,注意的是上拉加载更多数据失败的问题,下拉加载数据失败了,页数应该还原.或者是请求成功的时候再将页 ...
- JS对select动态添加option操作 (三级联动) (搜索拼接)
以下纯属自我理解之下再东搜西查的内容~ JS对select动态添加option操作有个高大上的艺名叫多级联动:第一级改变时,第二级跟着变,第二级改变时,第三级跟着变... 本菜鸟是在工作中遇到做收货地 ...
- ios日期显示NaN
ios中js通过getMonth()获取到的日期显示NaN,而在其他地方如pc.安卓都是ok的,这是为什么呢,原来这里有个ios的兼容问题,需要将日期中的“-”替换为“/” var time = ne ...
随机推荐
- Qt自定义标签按钮
当你接触到Qt时,你会为它极为方便的跨平台方面感到吃惊,从而想尝试着使用Qt.渐渐地你会发现Qt自带的一些控件不能满足自己的需要,此时就需要我们自己定义一个属于自己的控件.总所周知,标签的风格设置类比 ...
- JS/jQ常用宽高及应用
关于js的宽高,随便一搜就是一大堆.这个一大堆对我来说可不是什么好事,看的头都大了.所以今天就总结了一些比较会常用的,并说明一下应用场景. 先来扯一下documentElement和body的微妙关系 ...
- JS数组+JS循环题
先看JS循环作业题: 一.一张纸的厚度是0.0001米,将纸对折,对折多少次厚度超过珠峰高度8848米 <script type="text/javascript"> ...
- 微信授权登录(PHP)
微信授权登录(PHP) 微信授权 OAuth2.0授权 微信网页授权 主要是在项目中遇到网页授权登录这个需求,就对此做些总结记录. OAuth2.0授权 OAuth是一个开放协议,允许用户让第三方应用 ...
- for循环 重点题
1.冒泡排序 (特别重要): <script type="text/javascript"> var attr=Array(); for(var i=0; i< ...
- Unity3D常用 API 之实例化与销毁
1.实例化游戏物体 1.1.游戏中的案例介绍 在很多 MMORPG 类的游戏中都有类似于“金钱副本”的副本关卡.在这类副 本中通常都是限定一个时间,在这个时间内玩家可以尽情的破坏,然后收集金钱. 分析 ...
- Bash内置命令
Bash有很多内置命令,因为这些命令是内置的,因此bash不需要在磁盘上为它们定位,执行速度更快. 1)列出所有内置命令列表$enable 2)关闭内置命令test$enable -n test 3) ...
- EF添加
1.添加单个模型(CreatRule()是构造模型)(Shop_ActivityRuleProduct是类) var rule = CreatRule(model); var ruled = db.S ...
- 还原SQL SERVER系统库
还原SQL SERVER系统库 共需还原三个系统库,还原顺序:master>msdb>model 还原master (1).数据库配置管理器->数据库服务属性->启动参数-&g ...
- [leetcode-543-Diameter of Binary Tree]
Given a binary tree, you need to compute the length of the diameter of the tree. The diameter of a b ...
