转换时间对象和字符串对象&添加时间
/*
*基本思路,将字符串时间转化为时间对象,通过毫秒数来加减时间,然后在转化为字符串输出
*/
//转化字符时间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对象的表现形式 ...
随机推荐
- vue-cli脚手架npm相关文件解读(6)build.js
系列文章传送门: 1.build/webpack.base.conf.js 2.build/webpack.prod.conf.js 3.build/webpack.dev.conf.js 4.bui ...
- 浅谈CSS模块化
为什么要CSS模块化? 你是否为class命名而感到苦恼? 你是否有怕跟别人使用同样class名而感到担忧? 你是否因层级结构不清晰而感到烦躁? 你是否因代码难以复用而感到不爽? 你是否因为commo ...
- Spring Date Jpa on update current_timestamp 自动维护创建时间和更新时间
在数据库里设置默认值current_timestamp可以维护创建时间,设置on update current_timestamp 可以维护更新时间.在JPA中应该如何去做呢?这里还是以上篇Topic ...
- Kubernetes e2e test and test framework
前言 Kubernetes的成功少不了大量工程师的共同参与,而他们之间如何高效的协作,非常值得我们探究.最近研究和使用了他们的e2e测试和框架,还是挺有启发的. 怎样才是好的e2e测试? 不同的人写出 ...
- [知了堂学习笔记]_JSON数据操作第1讲(初识JSON)
一.认识JSON 什么是JSON? JSON(JavaScript Object Notation, JS 对象标记) 是一种轻量级的数据交换格式..它基于 ECMAScript (w3c制定的js规 ...
- Linux下C/C++和lua交互-Table
本来这些文章都是在我的个人网站www.zhangyi.studio,目前处在备案状态,暂时访问不了,所以搬到这边. 最近这两天需要弄清楚C++和lua间相互调用和数据传递,废话不多说,直接上过程. ...
- 【详细资料】ICN6202:MIPI DSI转LVDS芯片简介
ICN6202功能MIPI DSI转LVDS,分辨率1920*1200,封装QFN40
- 聊聊并发-Java中的Copy-On-Write容器
详见: http://blog.yemou.net/article/query/info/tytfjhfascvhzxcytp78 聊聊并发-Java中的Copy-On-Write容器 Cop ...
- 利用Java调用OpenCV进行人脸识别
详见:http://blog.yemou.net/article/query/info/tytfjhfascvhzxcyt409 今天我准备学习如何用Java来进行人脸检测.人脸检测有助于在任何数字图 ...
- C++中模板Template的使用
1. 在c++Template中很多地方都用到了typename与class这两个关键字,而且好像可以替换,是不是这两个关键字完全一样呢?class用于定义类,在模板引入c++后,最初定义模板的方法为 ...