HTML页面间需要传递日期和时间参数的时候,如果需要对日期字符串进行时间的运算,就需要先将日期字符串转换成JS日期对象。

在js中,yyyy-MM-dd HH:mm:ss格式的日期字符串不能用来直接构造JS日期对象,需要先做将“-”替换处理:

timeStr.replace(/-/g, '/');

具体实现如下:

// 给Number原型添加左边补位函数
Number.prototype.padLeft = function(lng, chr) {
if (!lng) lng = 0;
if (!chr) chr = '0';
var vStr = this.toString(); if (vStr.length > lng) {
return vStr.substring(vStr.length - lng,vStr.length);
} else if (vStr.length < lng) {
var tnum = Math.pow(10,lng - vStr.length).toString();
return tnum.substring(1, tnum.length).replace("0",chr) + this.toString();
}
return this.toString();
};
// 给Date原型添加转化成字符串格式yyyy-MM-dd HH:mm:ss函数
Date.prototype.toMyStr = function() {
return this.getFullYear()
+ '-' + (this.getMonth() + 1).padLeft(2)
+ '-' + this.getDate().padLeft(2)
+ ' ' + this.getHours().padLeft(2)
+ ':' + this.getMinutes().padLeft(2)
+ ':' + this.getSeconds().padLeft(2);
}; // 使用示例
// 日期字符串中含有空格能字符,HTML页面传递日期字符串时可以先用encodeURIComponent编码,在接收页面再用decodeURIComponent解码
var timeStr = '2015-09-07 13:40:36';
var ct = new Date(timeStr.replace(/-/g, '/'));
var addHours = 13;
ct.setHours(ct.getHours() + addHours);
console.log(ct.toMyStr());

打印结果

2015-09-08 02:40:36

javascript日期字符串和日期对象相互转换的更多相关文章

  1. javascript转换日期字符串为Date对象

    把一个日期字符串如“2007-2-28 10:18:30”转换为Date对象: 1: var strArray=str.split(" "); var strDate=strArr ...

  2. 3.javascript转换日期字符串为Date对象

    js中文网 阮一峰 1.求format“xxxx年xx月xx日 xx:xx”类型的两个日期天数差 var start = "2017年09月17日 13:51"; var end ...

  3. IOS内置safari浏览器日期字符串转Date对象失败

    代码示例: <html> <head> <title>Date字符串转化示例</title> </head> <body> &l ...

  4. Swift根据日期字符串返回日期是星期几

    最近在做的一个IOS项目中需要根据日期得出日期代表的是星期几,日期以字符串的形式获得,于是该方法可以简单描述如下: /* * 根据日期格式字符串返回日期代表星期几 * 参数:dateTime,字符串类 ...

  5. java和.net 处理任意格式日期字符串转日期类型,

    1.SimpleDateFormat.parse 把指定格式字符串转日期类型 public static Calendar convToCalender(String str,String templ ...

  6. Java 日期字符串与日期类型转换

    1.SimpleDateFormat.format 把日期类型转化到指定格式字符串 public static String convToString(Calendar cld,String temp ...

  7. C# 把日期字符串转换为日期类型 (MM大写为月、小写为分钟)

    string dtStr; DateTime dtTime; 尝试把时间字符串转为DateTime格式 if (DateTime.TryParse(dtStr, out dtTime)) { //st ...

  8. javascript json字符串转json对象方法

    /* * @method 将拼接好字符串格式的json 转成json对象 * @param jsonData param fomart: * var jsonData = "{name1:' ...

  9. Json字符串和Json对象相互转换

    字符串-->json对象:JSON.parse() var str = '{"code":"A001","name":"张三 ...

随机推荐

  1. oct()

    oct() 用于将一个十进制的整数转换成八进制字符串 In [10]: oct(10) Out[10]: ' In [11]: oct(20) Out[11]: '

  2. strip() 、lstrip() 、rstrip()

    strip() 用于移除字符串开头和结尾的空格或换行符,如果指定参数,则表示移除指定的字符lstrip() 用于移除字符串开头的空格或换行符,如果指定参数,则表示移除指定的字符rstrip() 用于移 ...

  3. 使用rlwrap调用sqlplus中历史命令

    此文来自http://www.cnblogs.com/mchina/archive/2013/03/08/2934473.html 在此谢谢原创作者. 在Linux中运行SQL*Plus,不能调用历史 ...

  4. win8.1rtm专业版无法安装net3.5还有iis

    win8.1rtm专业版无法安装net3.5还有iis错误代码:0x800F0906 已解决:dism.exe /online /enable-feature /featurename:NetFX3 ...

  5. android基础---->Fragment的使用

    碎片(Fragment)是一种可以嵌入在活动当中的UI 片段,它能让程序更加合理和充分地利用大屏幕的空间,因而在平板上应用的非常广泛. Fragment的基础例子

  6. android基础组件---->Checkboxe的使用

    由于使用比较简单,这篇博客涵盖Checkboxes和Radio Buttons和Toggle Buttons.好了我们开始今天的学习.我被世俗隐瞒,转身又被自己撞倒.从莫须有的罪名起步,行色简单,心术 ...

  7. 深入浅出Docker(二):Docker命令行探秘

    1. Docker命令行 Docker官方为了让用户快速了解Docker,提供了一个交互式教程,旨在帮助用户掌握Docker命令行的使用方法.但是由于Docker技术的快速发展,此交互式教程已经无法满 ...

  8. codereviw得到的一些经验

    1.设置display为none的元素,它的背景图依然会被下载.所以最好是等到该元素需要显示时才给他加上相应的有背景图的class. 2.css中虽然ID选择器的优先级比较高,效率也比较高,但灵活性差 ...

  9. Ubuntu16.04安装Nessus和MSF

    一.Nessus篇: 1.参考文献:https://www.cnblogs.com/shamojituan/p/6511208.html 2.下载地址:https://downloads.nessus ...

  10. 有关velocity的资料(等待整理)

    proxy-target-class="true" 与proxy-target-class="false"的区别: proxy-target-class属性值决 ...