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 ...
随机推荐
- Modelsim初级使用教程
来源 http://blog.sina.com.cn/s/blog_6c7b6f030101ctlh.html 一. Modelsim简介 Modelsim仿真工具是Model公司开发的.它支持Ver ...
- windows gui测试工具:AutoIt
windows gui测试工具:AutoIt 2017-01-09 目录 1 简介2 示例1 记事本自动化操作3 示例2 上传文件 1 简介 返回 AutoIt v3 是用以编写并生成具有 BASIC ...
- 第三步 用Jena自定义完成数据库到RDF的映射
第三步 用Jena自定义完成数据库到RDF的映射 2013年10月17日 8:53:27 这一步用Jena编程,终于能做点有技术含量的事情了.这个工作计划本周内完成,下周一好给老师一个交待. 目标:把 ...
- C# 导入文件日期格式(dd/MM/yyyy)
最近项目导入数据日期变成了这样 这是因为转换成了美国时间 美国时间格式:MM/dd/yyyy 英国时间格式:dd/MM/yyyy 避免导入出现这个问题的话就需要将excel文档单元格样式设 ...
- hdu 1050 Moving Tables
http://acm.hdu.edu.cn/showproblem.php?pid=1050 这个题我首先直接用的常规贪心,用的和那个尽可能看更多完整节目那种思路.但是.......一直WA....T ...
- ActiveMQ, Qpid, HornetQ and RabbitMQ in Comparison
国内私募机构九鼎控股打造APP,来就送 20元现金领取地址:http://jdb.jiudingcapital.com/phone.html内部邀请码:C8E245J (不写邀请码,没有现金送)国内私 ...
- Monitoring and Tuning the Linux Networking Stack: Receiving Data
http://blog.packagecloud.io/eng/2016/06/22/monitoring-tuning-linux-networking-stack-receiving-data/ ...
- JS问题Uncaught ReferenceError:XXXX is not defined
背景: html中一个table,table中进行分页.每行后面有一系列操作,如删除,修改.现在以删除为例说明问题. 实现方式: 使用button,在onclick中调用js函数,js函数中传递参数如 ...
- Mysql 数据库 操作语句
mysql 格式语句规范 如何登陆你的数据库? 举例! 如果你的是 编译安装的花 那就得去编译安装后的那个目录中去,我的是安装到/usr/local/mysql 下登陆数据库:cd /usr/loca ...
- ThinkPHP函数详解:F方法
我们已经了解了ThinkPHP中的S方法的用法,F方法其实是S方法的一个子集功能,仅用于简单数据缓存,并且只能支持文件形式,不支持缓存有效期,因为采用的是PHP返回方式,所以其效率较S方法较高,因此我 ...