转换时间对象和字符串对象&添加时间
/*
*基本思路,将字符串时间转化为时间对象,通过毫秒数来加减时间,然后在转化为字符串输出
*/
//转化字符时间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对象的表现形式 ...
随机推荐
- 七牛云数据存储Demo
利用七牛云的Python SDK实现文件上传.下载等操作. import os import requests import qiniu from qiniu import BucketManager ...
- 权限大全-linux基础
一.文件权限 (1)文件的权限主要针对三类对象定义: u:属主,owner g:属组,group o:其他,other 权限有三种: r:可读 w:可写 x:可执行 ...
- TTL转MIPI DSI芯片方案TC358778XBG
型号:TC358778XBG功能:TTL转MIPI DSI通信方式:IIC分辨率:1920*1080电源:3.3/1.8/1.2封装形式:BGA80深圳长期现货 ,提供技术支持,样品申请及规格书请联系 ...
- 《物联网框架ServerSuperIO教程》- 22.动态数据接口增加缓存,提高数据输出到OPCServer和(实时)数据库的效率
22.1 概述及要解决的问题 设备驱动有DeviceDynamic接口,可以继承并增加新的实时数据属性,每次通讯完成后更新这些属性数据.原来是通过DeviceDynamic接口实体类反射的方式获 ...
- ps抠图的几种方法
大家经常会遇到抠图的问题,最多的就是抠人体.头发,抠水,抠树,,,自己经过学习总结了下ps抠图方法,有好几种抠图的方法,我只选择了四种好用的与大家分享 1.色彩范围 比如我们要抠图片上的海水,要抠的图 ...
- 分布式测试工具Beetle.DT的部署并进行HTTP,SQL,TCP压测
由于Beetle.DT是一个分布式压力测试工具,所以在使用上并不像普通工具那样安装运行这么简单:由于工具涉及到测试管理中心,节点和管理端等工具: 所以必须要进行相应的部署才能运行.接下来详解一下如果安 ...
- 1000以内完全数(完美数)获取实现---基于python
"""题目: 如果一个数恰好等于它的因子之和,则称该数为"完全数" .各个小于它的约数(真约数,列出某数的约数,去掉该数本身,剩下的就是它的真约数)的 ...
- JQuery的动态加载class无法实现点击时间的解决方案
//对于 加载过来class 的del_a 实现点击事情 $(document).on('click',".del_a",function(){ $(".mark_id& ...
- poj 3013 SPFA
首先看题看的很懵.. 然后这题直接没想用Djstra做 TLE了.看discuss,Dijstra要用堆优化,也可以用SPFA做. 这里在网上找了这两种做法的区别,点多稠密图用Dij,以为它是操作点的 ...
- grunt之connect、watch
先说下这两个插件配合的用处,简单的说,它们可以拯救你的F5.connect用于建立一个静态服务器,watch监听文件的修改并自动实时刷新浏览器的页面. 还是options走起. connect(V0. ...