js中两个日期大小比较,获取当前日期,日期加减一天
一、两个日期大小比较
1、日期参数格式:yyyy-mm-dd
// a: 日期a, b: 日期b, flag: 返回的结果
function duibi(a, b,flag) {
var arr = a.split("-");
var starttime = new Date(arr[0], arr[1], arr[2]);
var starttimes = starttime.getTime();
var arrs = b.split("-");
var endTime = new Date(arrs[0], arrs[1], arrs[2]);
var endTimes = endTime.getTime();
// 进行日期比较
if (endTimes >= starttimes) {
flag = "true";
return flag;
}else{
flag = "false";
return flag;
}
}
2、日期格式:yyyy-mm-dd hh:mi:ss
function comptime() {
var beginTime = "2009-09-21 00:00:00";
var endTime = "2009-09-21 00:00:01";
var beginTimes = beginTime.substring(0, 10).split('-');
var endTimes = endTime.substring(0, 10).split('-'); beginTime = beginTimes[1] + '-' + beginTimes[2] + '-' + beginTimes[0] + ' ' +beginTime.substring(10, 19); endTime = endTimes[1] + '-' + endTimes[2] + '-' + endTimes[0] + ' ' + endTime.substring(10, 19); // alert(beginTime + "aaa" + endTime);
// alert(Date.parse(endTime));
// alert(Date.parse(beginTime));
var a = (Date.parse(endTime) - Date.parse(beginTime)) / 3600 / 1000;
if (a < 0) {
alert("endTime小!");
} else if (a > 0) {
alert("endTime大!");
} else if (a == 0) {
alert("时间相等!");
} else {
return 'exception'
}
}
二、JS中获取日期前一个月的日期
1、参数date格式 : yyyy-mm-dd
function getPreMonth(date) {
var arr = date.split('-');
var year = arr[0]; //获取当前日期的年份
var month = arr[1]; //获取当前日期的月份
var day = arr[2]; //获取当前日期的日
var days = new Date(year, month, 0);
days = days.getDate(); //获取当前日期中月的天数
var year2 = year;
var month2 = parseInt(month) - 1;
if (month2 == 0) {
year2 = parseInt(year2) - 1;
month2 = 12;
}
var day2 = day;
var days2 = new Date(year2, month2, 0);
days2 = days2.getDate();
if (day2 > days2) {
day2 = days2;
}
if (month2 < 10) {
month2 = '0' + month2;
}
var t2 = year2 + '-' + month2 + '-' + day2;
return t2;
}
三、js中日期加减一天
1、 定义以下两个方法
//String 转为 data: ("yyyy-MM-dd")格式的字符串 转为 Wed Jul 05 2017 13:50:11 GMT+0800 (中国标准时间)
function convertDateFromString(dateString) {
if (dateString) {
var date = new Date(dateString.replace(/-/,"/"))
return date;
}
}
9 //格式化日期 : Wed Jul 05 2017 13:50:11 GMT+0800 (中国标准时间) 准尉 格式为 yyyy-mm-dd 的日期类型
function formatTime(date) {
var year = date.getFullYear();
var month = date.getMonth()+1, month = month < 10 ? '0' + month : month;
var day = date.getDate(), day =day < 10 ? '0' + day : day;
return year + '-' + month + '-' + day;
} 2、用法例子:
var test = convertDateFromString("2017-10-11");//返回标准的中国时间
test = formatTime(test); //返回 yyyy-mm-dd 的Date类型
var now = test.split('-')
now = new Date(Number(now['0']),(Number(now['1'])-1),Number(now['2']))
now.setDate(now.getDate() - 1); //setDate()方法实现 加 或 减 一天(可以避免 1号时减一天出错的情况),setDate()方法不会返回任何值,但调用者now会发生改变
var xx = formatTime(now);
js中两个日期大小比较,获取当前日期,日期加减一天的更多相关文章
- js中两个对象的比较
代码取自于underscore.js 1.8.3的isEqual函数. 做了一些小小的修改,主要是Function的比较修改. 自己也加了一些代码解读. <!DOCTYPE html> & ...
- 关于js中两种定时器的设置及清除(转载)
1.JS中的定时器有两种: window.setTimeout([function],[interval]) 设置一个定时器,并且设定了一个等待的时间[interval],当到达时间后,执行对应的方法 ...
- sqlserver2008存储过程(比较两个日期大小和获取当前月最大天数的存储过程)
下面简单介绍sqlserver2008两个常用的存储过程 1.比较两个日期大小的存储过程 2.获取当前月份的最大天数的存储过程 1.创建比较两个日期大小的存储过程 1)创建比较两个日期大小的存储过程 ...
- JS中使用EL表达式方法与获取工程名字
关键: 在js中使用el表达式一定要使用双引号 分两种情况 1. JS代码在JSP页面中, 这可以直接使用EL表达式. 如: <script type="text/javas ...
- 关于js中两种定时器的设置及清除
1.JS中的定时器有两种: window.setTimeout([function],[interval]) 设置一个定时器,并且设定了一个等待的时间[interval],当到达时间后,执行对应的方法 ...
- js中两个!!的理解
在js中经常有两个!!出现,经常让人难以理解 (function () { var a = 10; var b = 20; function add(num1, num2) { var num1 = ...
- 一文看懂js中元素的滚动大小(scrollWidth,scrollHeight,scrollTop,scrollLeft)
滚动大小(scroll dimension) 滚动大小指的是包含滚动内容元素的大小. 以下是与元素滚动内容大小相关的属性: 1. scrollWidth:在没有滚动条的情况下,元素内容的总宽度. 2. ...
- [置顶] js中如何复制一个对象,如何获取所有属性和属性对应的值
在js中如何复制一个对象,例如如下一个js对象. 如果知道这个对象的所有属性自然就可以重新new一个,然后对每个属性赋值,就可以做到,但如果不知道呢?如何创建一个内容相同 的对象呢? var obj= ...
- 在JS中如何把毫秒转换成规定的日期时间格式
最近做的一个项目,从后台查询到日期数据传到前台JS中遍历之后显示的是以"14"开头的毫秒数,刚开始想用"simpleDateFormat"类处理,结果显示都不显 ...
随机推荐
- 小白学flask之静态文件
引入css的方式有两种 1 那在flask中,如何处理静态文件? 做法很简单,只要在你的包或模块旁边创建一个名为 static 的文件夹就行了. flask的静态文件是位于应用的 /static 中的
- js权威指南学习笔记(四)对象
1.创建对象 (1).通过对象直接量的方式创建 说明:对象直接量是由若干名/值对组成的映射表,名/值对中间用冒号分隔,名/值对之间用逗号分隔,整个映射表用花括号括起来. 如: 5 5 ...
- JavaScript中实现DI的原理
什么是依赖注入 按照上面图的流程中我们可以知道我们需要实现这么几件事: 提供一个服务容器 为目标函数注册需要的依赖 获取目标函数注册的依赖项 通过依赖项来查询对应服务 将获取的依赖项传入目标函数 提供 ...
- myeclipse 下载 checkstyle 引入后不显示问题
参照这篇博客,http://blog.csdn.net/zzq900503/article/details/42003499 下载最新的checkstyle版本后,在本地导入后一直不显示,步骤什么的也 ...
- 柔性数组成员 (flexible array member)-C99-ZZ
学习flexible array member是因为阅读Redis源码遇到的,sds.h中一开始就用到了. ============================================== ...
- Jenkins安装 CentOS 7上安装Jenkins
CentOS 7上安装Jenkins Jenkins 安装 只安装不介绍 步骤1:更新CentOS 7 Linux系统管理员的最佳做法之一是使系统保持最新.安装最新的稳定包,然后重新启动. 1 2 ...
- git-day1-安装和基础使用
Git介绍 Git是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目. Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件 ...
- 文本处理三剑客之 Sed ——一般编辑命令
sed简介 sed (stream editor for filtering and transforming text) 是Linux上的文本处理三剑客之一,另外两个是grep和awk. sed又称 ...
- (名词 形容词 动词 副词)重读&(冠词 介词 连词 代词 辅助词(Be))弱读
二,一些发音规则 除了上面的练习之外,这里还有几个注意点需要我们有足够的认识,那就是英语有重读.弱读.连读.爆破.语感(节奏和断句)等(其实当你跟读并背诵新概念之后,这一切都是神马,你不知觉地也会发现 ...
- 最详细的Vue Hello World应用开发步骤
很多Vue的初学者想尝试这个框架时,都被webpack过于复杂的配置所吓倒,导致最后无法跑出一个期望的hello word效果.今天我就把我第一次使用webpack打包一个Vue Hello Worl ...