转换时间对象和字符串对象&添加时间
/*
*基本思路,将字符串时间转化为时间对象,通过毫秒数来加减时间,然后在转化为字符串输出
*/
//转化字符时间yy-mm-dd hh:mm:ss 为时间对象 使用split进行字符串的分割,取值并创建新的时间对象
var toDate = function(strDateTime){
var strDateTimes = strDateTime.split(' ');
var strDate = strDateTimes[0].split('-');
var year = Number(strDate[0]);
var month = Number(strDate[1]) - 1;
var day = Number(strDate[2]);
var strTime = strDateTimes[1].split(':');
var hour = Number(strTime[0]);
var minute = Number(strTime[1]);
var secend = Number(strTime[2]);
return new Date(year, month, day, hour, minute, secend);
}
//转化为字符时间yy-mm-dd hh:mm:ss 通过时间对象的方法获取时分秒,使用字符串进行拼接返回字符串
var toStrDate = function(objDate){
var year = objDate.getFullYear();
var month = objDate.getMonth()+1;
var day = objDate.getDate();
var hour = objDate.getHours();
var minute = objDate.getMinutes();
var second = objDate.getSeconds();
if(month<10){
month = "0"+month;
}
if(day<10){
day = "0"+day;
}
if(hour<10){
hour = "0"+hour;
}
if(minute<10){
minute = "0"+minute;
}
if(second<10){
second = "0"+second;
}
return year+"-"+month+"-"+day+" "+hour+":"+minute+":"+second
}
/*添加时间
*strTime为字符串时间格式yy-mm-dd hh:mm:ss 或 时间对象
*如果未输入则默认为当前时间
*addTime为秒数
*/
var addDate = function(strTime,addTime){
var addTime = Number(addTime)*1000;
var newDate = new Date();
//toDate
if(typeof(strTime)=="object"){
newDate = strTime;
}else if(typeof(strTime)=="string"){
var strDateTimes = strTime.split(" ");//年月日
var strDate = strDateTimes[0].split("-");
var year = Number(strDate[0]);
var month = Number(strDate[1])-1;
var day = Number(strDate[2]);
var strTime = strDateTimes[1].split(":");//时分秒
var hour = Number(strTime[0]);
var minute = Number(strTime[1]);
var second = Number(strTime[2]);
newDate = new Date(year,month,day,hour,minute,second);
}else{
alert("输入的格式不正确")
}
//添加时间
var addDate = newDate+addTime;
//toStr
var new_year = addDate.getFullYear();
var new_month = addDate.getMonth()+1;
var new_day = addDate.getDate();
var new_hour = addDate.getHours();
var new_minute = addDate.getMinutes();
var new_seconds = addDate.getSeconds();
if(new_year<10){
new_year = "0"+new_year;
};
if(new_month<10){
new_month = "0"+new_month;
};
if(new_day<10){
new_day = "0"+new_day;
};
if(new_hour<10){
new_hour = "0"+new_hour;
};
if(new_minute<10){
new_minute = "0"+new_minute;
};
if(new_second<10){
new_second = "0"+new_second;
};
return new_year+"年"+"-"+new_month+"月"+"-"+new_day+"日"+" "+new_hour+"时"+":"+new_minute+"分"+":"+new_second+"秒"
};
转换时间对象和字符串对象&添加时间的更多相关文章
- JavaScript课程——Day07(对象简介、Math对象、时间对象、字符串对象)
1.对象简介 在javaScipt中,一切皆为对象或者皆可以被用作对象 宿主对象:window,document 内置对象:Number String Boolean Array数组 Obje ...
- js对象 1字符串对象2时间日期对象3数字对象
1字符串对象 直接对字符操作 var str = "这,是,不,是,字,符,串"; //字符串转数组 字符串.split(分隔符) var arr ...
- JS对象 String 字符串对象定义字符串的方法就是直接赋值。比如: var mystr = "I love JavaScript!"
String 字符串对象 在之前的学习中已经使用字符串对象了,定义字符串的方法就是直接赋值.比如: var mystr = "I love JavaScript!" 定义mystr ...
- 学习笔记:javascript内置对象:字符串对象
1.字符串的创建 var str = "Hello Microsoft!"; 2.字符串属性 constructor 返回创建字符串属性的函数 length ...
- 第七天:JS内置对象-String字符串对象
1.String对象 String对象用于处理已有的字符串 字符串可以使用双引号或单引号 String对象有一些常用的方法和属性,例如length 示例代码: <!DOCTYPE html&g ...
- js中JSON对象和字符串对象相互转化
JSON.stringify(value [, replacer] [, space]) //作用,将json数据转化为字符串value:是必须要的字段.就是你输入的对象,比如数组啊,类啊等等. re ...
- redis 系列9 对象类型(字符串,哈希,列表,集合,有序集合)与数据结构关系
一.概述 在前面章节中,主要了解了 Redis用到的主要数据结构,包括:简单动态字符串.链表(双端链表).字典.跳跃表. 整数集合.压缩列表(后面再了解).Redis没有直接使用这些数据结构来实现键值 ...
- redis 系列10 字符串对象
一. 字符串对象编码 Redis中字符串可以存储3种类型,分别是字节串(byte string).整数.浮点数.在上章节中讲到字符串对象的编码可以是int, raw,embstr. 如果一个字符串对象 ...
- JavaScript对象、JSON对象、JSON字符串的区别
一.首先看下什么是JSON JSON:JavaScript Object Natation,JavaScript对象的表现形式,已经发展成一种轻量级的数据交换格式. JavaScript对象的表现形式 ...
随机推荐
- 转每天一个linux命令(14):head 命令
head 与 tail 就像它的名字一样的浅显易懂,它是用来显示开头或结尾某个数量的文字区块,head 用来显示档案的开头至标准输出中,而 tail 想当然尔就是看档案的结尾. 1.命令格式: hea ...
- Java 逆变与协变
最近一直忙于学习模电.数电,搞得头晕脑胀,难得今天晚上挤出一些时间来分析一下Java中的逆变.协变.Java早于C#引入逆变.协变,两者在与C#稍有不同,Java中的逆变.协变引入早于C#,故在形式没 ...
- HTTPS 证书配置
HTTPS 证书配置 现在阿里云和腾讯云都支持申请 HTTPS 证书,这里不再提,有需要的可自行google解决方案. 本文主要介绍的是通过 letsencrypt 申请免费的HTTPS证书,并将其配 ...
- postman 第1节 安装启动(转)
安装: 1.mac app安装 浏览器访问https://www.getpostman.com/apps,选择Get the Mac App,下载安装即可 2.chrome app安装 浏览器访问ht ...
- mysql互换表中两列数据
在开发过程中,有时由于业务等需要把一个表中的两列数据进行交换. 解决方案 使用update命令,这完全得益于MySQL SQL命令功能的强大支持. 表格中原来数据类似如下: select * from ...
- 源码编译安装bind
author:JevonWei 版权声明:原创作品 编译bind 准备阶段: 下载bind软件包,然后传输到系统中 https://www.isc.org/downloads/ 安装开发包组 yum ...
- Springboot与Thymeleaf模板引擎整合基础教程(附源码)
前言 由于在开发My Blog项目时使用了大量的技术整合,针对于部分框架的使用和整合的流程没有做详细的介绍和记录,导致有些朋友用起来有些吃力,因此打算在接下来的时间里做一些基础整合的介绍,当然,可能也 ...
- Web颜色对照表大全
Web上16种基本颜色名称 Name Hex (RGB) Red (RGB) Green (RGB) Blue (RGB) Hue (HSL/HSV) Satur. (HSL) Light (HSL) ...
- 在对话框中利用CToolBar类添加工具条的方法
UINT BASED_CODE DockTool[]={ID_NEWGAME,ID_SAVE,ID_OPEN,ID_SEPARATOR,ID_COPYFEN,ID_PASTEFEN,ID_SEPARA ...
- 转:【Java并发编程】之十六:深入Java内存模型——happen-before规则及其对DCL的分析(含代码)
转载请注明出处:http://blog.csdn.net/ns_code/article/details/17348313 happen-before规则介绍 Java语言中有一个"先行发生 ...