数据库中取出时间数据,JS转换后小时的值多了8个小时

来源:互联网 发布:战地使命召唤知乎 编辑:程序博客网 时间:2024/06/10 23:56

描述:数据库中获取的数据转换成json格式后,JS再取出来转换成时间,发现小时数多了8,原因和当地时区有关系,解决办法形如:0001-01-01T00:00:00 可以用replace替换掉T。文末也附上了JS截取毫秒值

{        field: 'AddDate', title: '添加时间', width: 12, halign: 'center', align: 'center', formatter: function (value, row, index) {          //var d = new Date(value);          //var year = d.getFullYear();          //var month = d.getMonth() + 1 >= 10 ? d.getMonth() + 1 : '0' + (d.getMonth() + 1);          //var date = d.getDate() >= 10 ? d.getDate() : '0' + d.getDate();          //var hour = d.getHours()-8;     不要轻易的减去8,方法不稳妥,也不要更改时区          //hour >= 10 ? hour : '0' + hour;                                  //var minute = d.getMinutes() < 10 ? ('0' + d.getMinutes()) : d.getMinutes();          //var seconds = d.getSeconds();          //seconds = seconds < 10 ? ('0' + seconds) : seconds;          if (value == "0001-01-01T00:00:00") {                return "未生成短信";          } 
  else {                value = value.replace("T", " ");                return value;                //return (year + '-' + month + '-' + date + ' ' + hour + ":" + minute+":"+seconds);                                      }}},

以上是截取的代码片段,只需要关注时间转化内容就好了


另附:时间的字符串带毫秒值如下
var value = "2016-03-06 15:31:54.033";
value = value.slice(0, value.indexOf("."));//将最后一个.和后面的内容截掉


获取后的value为 2016-03-06 15:31:54

阅读全文
0 0