IE浏览器new Date()带参返回undefined解决方法

问题描述

今天给网站增加统计功能,其中一个功能为网站运行时间

此功能通过当前时间建站时间算差后计算网站运行时间为n年n天n时n分n秒,代码写完后测试浏览器显示效果时发现,非IE浏览器内核均正常显示,IE浏览器下显示效果的时候发现结果显示为:undefined年undefined天undefined时undefined分undefined秒

经过排查,发现在IE11下,new Date("2017-09-01 15:16:16")返回undefined。

解决问题

方法一:自定义方法

自定义一个NewDate方法:

function NewDate(str){  
  if(!str){  
    return 0;  
  }  
  arr=str.split(" ");  
  d=arr[0].split("-");  
  t=arr[1].split(":");  
  var date = new Date();   
  date.setUTCFullYear(d[0], d[1] - 1, d[2]);   
  date.setUTCHours(t[0], t[1], t[2], 0);   
  return date;  
}  

方法二:通过Date.parse()方法

‘ 2017-09-01 15:16:16‘是无法被各个浏览器中,使用new Date(str)来正确生成日期对象的。 正确的用法是‘ 2017/09/01 15:16:16‘。

基于‘/‘格式的日期字符串,才是被各个浏览器所广泛支持的,‘-’连接的日期字符串,则是只在chrome下可以正常工作。

var timestart = new Date(Date.parse(‘2017-09-01 15:16:16‘.replace(/-/g,"/")))

参照:https://blog.csdn.net/wqiancangq/article/details/52484806

原文地址:https://www.cnblogs.com/xianfengzhike/p/9694665.html

时间: 2024-10-11 21:43:36

IE浏览器new Date()带参返回undefined解决方法的相关文章

Chrome浏览器扩展程序强制停用的解决方法

http://blog.csdn.net/pipisorry/article/details/37728839 一.加载正在开发的扩展程序 这里以加载一个已有的Chrome扩展程序为例: 把已有的扩展程序(.crx文件)后缀改为.zip,就可以把它解压缩到某个目录,比如将lingoes_chrome_2.1.crx改成lingoes_chrome_2.1.zip并解压到D:\Downloads\Editor\lingoes_chrome_2.1.zip 打开谷歌浏览器 - 工具 - 扩展程序 -

php curl返回false解决方法

curl返回false解决方法 直接出书 var_dump( curl_error($curl) ) 看看报什么错 一般 curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false); curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false); 这样就行了 但是 有时候报SSL connect error 操作如下 首先进入Linux操作系统,打开终端:输入nss更新命令:yum update nss 然后按回车键:

CenOS下firefox browser (火狐浏览器)无法播放网页音乐的解决方法

新装载的Firefox或许无法播放网页音频,解决方法如下: 1. 下载并安装 flashplayer插件&&下载网址:https://get.adobe.com/flashplayer/?loc=cn 2. 解压 并将其中的libflashplayer.so放到主文件夹及/Home下 3. 进入terminal获取管理员权限操作,使用  su 命令 4. 查看主文件夹下是否存在 libflashplayer.so文件,dir命令 5. 复制libflashplayer.so到火狐插件文件夹

IE8及低版本浏览器不支持CSS3 media queries的解决方法

问题:IE8及其以下低版本IE浏览器在缩小窗口时,UI没有按照相应的要求显示窗口缩小时对应的布局:其他浏览器正常. 定位过程: 其实开始拿到问题时是无从下手,不知所以然,根本就没听说还有media这个CSS属性,就更不知道它的功能了.但是对于解决UI问题,有自己的一套思路,就是首先要思考为什么会错误以及为什么没有错误两个方面,然后针对这两个方面的疑问把html或js或css文件简化再简化,修改再修改,查看UI变化,从而缩小问题范围,最后找出问题根源. 如此我就想为什么其他浏览器界面布局没有问题呢

火狐浏览器select文字垂直不居中的解决方法

1.问题:火狐浏览器select文字垂直不居中 .zcsearch select{height:24px;} <div class="zcsearch"> <select > <option>全部</option> </select> </div> 2.解决方法:使用padding: 1px 0;即可 .zcsearch select{height:24px;padding: 1px 0;}

hexo Deployer not found: undefined 解决方法

问题:在部署hexo 时执行 hexo d 结果显示[Error]hexo Deployer not found: undefined 几经查找后发现问题出现在_config.yml文件中.出现以上问题的原因可能是: 1.文件中包含中文但是保存格式为anscii码格式导致乱码是的文件解析失败. 解决方法:用记事本(推荐UE)打开文件修改乱码字符后另存为选择编码格式为UTF-8. 2.在添加type等标签时直接将值填写在‘:’后边导致文件解析失败. 解决方法:其实要在‘:’后面加一个空格然后在输入

js监控微信浏览器的自带的返回事件

pushHistory(); window.addEventListener("popstate", function(e) { e.preventDefault(); //alert("我监听到了浏览器的返回按钮事件啦"); //根据自己的需求实现自己的功能 //window.location = 'http://www.baidu.com'; pushHistory(); }, false); function pushHistory() { var state

小程序,带参返回上一页几种方法

// 注意:调用 navigateTo 跳转时,调用该方法的页面会被加入堆栈,而 redirectTo 方法则不会.见下方示例代码 // 此处是A页面 wx.navigateTo({ url: 'B?id=1' }) // 此处是B页面 wx.navigateTo({ url: 'C?id=1' }) // 在C页面内 navigateBack,将返回A页面 wx.navigateBack({ delta: 2 }) 参见: https://developers.weixin.qq.com/mi

【转】微信缓存、浏览器缓存等各种顽固缓存的解决方法,缓存解决方法

[转自网络] 不啰嗦,直接说方法吧: 在更新文件的时候,在引用css,js等文件的语句上加上一个版本号,就能有效防止浏览器一直使用缓存中的css,js 例: <link href="/html/superstore/css/SuperStore.css?201410281" rel="stylesheet"> 每次改一下 “201410281“即可 不过这个可能是以带参数的形式引用,不知道在引用js的时候,会不会有一些参数方面的困扰,尚未测试 ps:最后