JS当前日期相加相减
function DateAddORSub(interval,type,number)
{
/*
* 功能:实现Script的Date加减功能.
* 参数:interval,字符串表达式,表示要添加的时间间隔.
* 参数:number,数值表达式,表示要添加的时间间隔的个数.
* 参数:type,加减类型.
* 返回:新的时间对象.
* var newDate =DateAddORSub("d","+",5);
*/
var date = new Date();
switch(interval)
{
case "y" : {
if(type=="+"){
date.setFullYear(date.getFullYear()+number);
}else{
date.setFullYear(date.getFullYear()-number);
}
return date;
break;
}
case "q" : {
if(type=="+"){
date.setMonth(date.getMonth()+number*3);
}else{
date.setMonth(date.getMonth()-number*3);
}
return date;
break;
}
case "m" : {
if(type=="+"){
date.setMonth(date.getMonth()+number);
}else{
date.setMonth(date.getMonth()-number);
}
return date;
break;
}
case "w" : {
if(type=="+"){
date.setDate(date.getDate()+number*7);
}else{
date.setDate(date.getDate()-number*7);
}
return date;
break;
}
case "d" : {
if(type=="+"){
date.setDate(date.getDate()+number);
}else{
date.setDate(date.getDate()-number);
}
return date;
break;
}
case "h" : {
if(type=="+"){
date.setHours(date.getHours()+number);
}else{
date.setHours(date.getHours()-number);
}
return date;
break;
}
case "m" : {
if(type=="+"){
date.setMinutes(date.getMinutes()+number);
}else{
date.setMinutes(date.getMinutes()-number);
}
return date;
break;
}
case "s" : {
if(type=="+"){
date.setSeconds(date.getSeconds()+number);
}else{
date.setSeconds(date.getSeconds()-number);
}
return date;
break;
}
default : {
if(type=="+"){
date.setDate(d.getDate()+number);
}else{
date.setDate(d.getDate()-number);
}
return date;
break;
}
}
}
function formatDate(date){;
var year = date.getFullYear(); //年
var month = date.getMonth() + 1; //月
var day = date.getDate(); //日
return year+"-"+month+"-"+day;
}
//当前时间加五天.
var newDate = DateAddORSub("d","+",5);
alert(newDate.toLocaleDateString());
//当前时间减五天.
newDate = DateAddORSub("d","-",5);
alert(formatDate(newDate));
//当前时间加两个月.
newDate = DateAddORSub("m","+",2);
alert(newDate.toLocaleDateString());
//当前时间减两个月.
newDate = DateAddORSub("m","-",2);
alert(formatDate(newDate));
//当前时间加一年
newDate = DateAddORSub("y","+",1);
alert(newDate.toLocaleDateString());
//当前时间减一年
newDate = DateAddORSub("y","-",1);
alert(formatDate(newDate));
JS当前日期相加相减的更多相关文章
- Jquery datepicker 时间插件使用 js 时间相加,相减
$(document).ready(function(){ //输入框事件 $('#probation').bind('input propertychange', function() { var ...
- js面试题--------JS中数字和字符,布尔类型相加相减问题
JS中数字和字符相加相减问题 <html lang="en"> <head> <meta charset="utf-8" /> ...
- JS两日期相减
JS两日期相减,主要用到下面两个方法 dateObject.setFullYear(year,month,day) 方法 stringObject.split(separator) 方法 functi ...
- 上机题目(中级)- 两个超级大的整数相加相减 (Java)
代码例如以下: public class AddSub { public static void main(String[] args) { String a="46328648326846 ...
- mysql时间日期相加相减实现
分享篇mysql中日期的一些操作,就是我们常常会用到的mysql时间日期的相加或者相减的了,这个mysql也自己带了函数,有需要的朋友可以参考一下. 最简单的方法 select TO_DAYS(str ...
- JS中小数相加相减时出现很长的小数点的解决方式
1.问题: 平时写的代码中会出现这种情况,parseFloat(11.3-10.1) 运行的结果依然是1.200000000000001 代码示例: var arr = [0.0111,11.002, ...
- js浮点数相加、减、乘、除精确计算
js 浮点数计算时 ,无缘无辜 后边冒出一堆 小数点………… 貌似js本身的问题,类型不定?????? 只能自己写函数处理.. http://blog.csdn.net/w4bobo/article ...
- scala 两个map合并,key相同时value相加/相减都可
scala 两个map合并,key相同时value相加 1.map自带的合并操作 2.map函数 2.1示例 2.2合并两个map 3.用foldLeft 3.1 语法 3.2 合并两个map 1.m ...
- js 两数相减
var SecondPrice = document.getElementById("txtSecondPrice"); //秒杀价 var MarketP ...
随机推荐
- 使用tomcat的jndi方式连接mysql的字符编码设置
最近新项目使用tomcat中配置jndi连接mysql的方式,在使用过程中发现查询条件为中文的时候查询不出结果,经过一通折腾,发现是jndi在连接数据库的时候忘记设置字符编码. 修改之后的完整配置如下 ...
- 【python自动化第八篇:网络编程】
一.拾遗 动态导入模块 目的是为了在导入模块的过程中将模块以字符的格式导入. #!/usr/bin/env python # -*- coding:utf-8 -*- #Author:wanghui ...
- WindDbug应用
Windbg是windows平台上的一款相当强大的调试工具,可以从msdn网站下载得到,最新版本包含在windows sdk中,默认会被安装在C:\Program Files\Debugging To ...
- Mac下安装cocos2d-x环境
安装后xcode之后,下载cocos2dx压缩包,解压 通过中断cd到cocos2dx文件夹内 输入下行命令 sudo ./install-templates-xcode.sh 执行成功后打开xcod ...
- android点滴之标准SD卡状态变化事件广播接收者的注冊
眼下最完整的,须要注冊的动作匹配例如以下: IntentFilter intentFilter = new IntentFilter(Intent.ACTION_MEDIA_MOUNTED); int ...
- java对空格的处理
public static void main(String[] args) { // TODO Auto-generated method stub String a = " 这个前面有两 ...
- FAQ系列 | 解读EXPLAIN执行计划中的key_len
http://imysql.com/2015/10/20/mysql-faq-key-len-in-explain.shtml
- 【Unicode】字符编码表信息
UTF-8有点类似于Haffman编码,它将Unicode编码为:0x00-0x7F的字符,用单个字节来表示:0x80-0x7FF的字符用两个字节表示:0x800-0xFFFF的字符用3字节表示: ...
- iOS 网络编程:NSURLSession
NSURLSession类和相关的类提供很多API来下载HTTP的内容.这些API提供多种delegate协议来支持验证和执行后台下载任务. 1 URL Session 设计概念 Session中的任 ...
- ASP.NET Mvc开发之EF延迟加载
EF延迟加载:就是使用Lamabda表达式或者Linq 从 EF实体对象中查询数据时,EF并不是直接将数据查询出来,而是在用到具体数据的时候才会加载到内存. 一,实体对象的Where方法返回一个什么对 ...