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 ...
随机推荐
- 第45篇 js操作打开本地程序
原文地址:http://blog.laofu.online/2017/06/10/how-js-controlApp/ 背景 假设有这样一个产品,一个web和一个winform客户端,在客户在web的 ...
- Hadoop和MapReduce初识
我们生活在大数据时代!!!微博.微信.云存储等大数据的需求,Hadoop由此诞生. 以下面部分数据为例: 1)Facebook存储着约100亿张照片,约1PB存储容量: 2)纽约证券交易所每天产生1T ...
- Hibernate.cfg.xml 主配置
<?xml version="1.0"?> <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hiber ...
- WPF MVVM 架构 Step By Step(6)(把actions从view model解耦)
到现在为止,我们创建了一个简单的MVVM的例子,包含了实现了的属性和命令.我们现在有这样一个包含了例如textbox类似的输入元素的视图,textbox用绑定来和view model联系,像点击but ...
- DB2简介和安装部署
一.DB2相关概念 1.DB2体系结构: DB2体系结构中的最高一层是系统,一个系统表示DB2的一个安装.在由很多机器组成 的网络环境中,我们有时=也称系统为数据库分区,一个系统可以包含多个DB2实例 ...
- POJ 1459-Power Network(网络流-最大流-ISAP)C++
Power Network 时间限制: 1 Sec 内存限制: 128 MB 题目描述 A power network consists of nodes (power stations, cons ...
- 谈谈java中遍历Map的几种方法
java中的map遍历有多种方法,从最早的Iterator,到java5支持的foreach,再到java8 Lambda,让我们一起来看下具体的用法以及各自的优缺点 先初始化一个map public ...
- Fuzz安全狗注入绕过
安全狗版本为: apache 4.0 网站为: php+mysql 系统: win 2003 这里只要是fuzz /*!union 跟 select*/ 之间的内容: /*!union<FUZZ ...
- MyEclipse常用操作
选择你要注释的那一行或多行代码,按Ctrl+/即可,取消注释也是选中之后按Ctrl+/即可. 如果你想使用的快捷键的注释是的话,那么你的快捷键是ctrl+shift+/我以前都是手动注释的,直接打// ...
- php 多维数组简化(递归)
<?php $a=[ 'a'=>['d'=>['aa'=>1,'bb'=>2,'cc'=>3]], 'b'=>['f'=>['dd'=>4,'ee ...
