Javascript 无法在jqgrid中分析时间戳格式为的日期

Javascript 无法在jqgrid中分析时间戳格式为的日期,javascript,date,jqgrid,Javascript,Date,Jqgrid,我得到的日期对象是JSON字符串,如下所示。 2019-03-12T02:39:38.197+0000 由于我在Jqgrid中尝试了所有可能的格式选项,因此没有给出确切的时间。所以我使用了我自己的格式化程序 function dateFormatter (cellvalue, options, rowObject) { var new_format_value=''; var date = new Date(cellvalue); var hours = date

我得到的日期对象是JSON字符串,如下所示。
2019-03-12T02:39:38.197+0000
由于我在Jqgrid中尝试了所有可能的格式选项,因此没有给出确切的时间。所以我使用了我自己的格式化程序

 function dateFormatter (cellvalue, options, rowObject)
  {
    var new_format_value='';
    var date = new Date(cellvalue);
     var hours = date.getHours();
      var minutes = date.getMinutes();
      var ampm = Number(hours) >= 12 ? 'PM' : 'AM';
      hours = Number(hours) % 12;
      hours = hours ? hours : 12; // the hour '0' should be '12'
      minutes = Number(minutes) < 10 ? '0'+ Number(minutes) : Number(minutes);
      var strTime = hours + ':' + minutes + ' ' + ampm;
      new_format_value=Number(date.getMonth())+1 + "/" + date.getDate() + "/" + date.getFullYear() + " " + strTime
      return new_format_value;
   }
函数日期格式化程序(单元格值、选项、行对象)
{
var新格式值=“”;
var日期=新日期(cellvalue);
var hours=date.getHours();
var minutes=date.getMinutes();
var ampm=数量(小时数)>=12?'PM':'AM';
小时数=小时数%12;
小时数=小时数?小时数:12;//小时数“0”应为“12”
分钟=数字(分钟)<10?'0'+数字(分钟):数字(分钟);
var strTime=hours+':'+minutes+''+ampm;
新格式\u值=数字(date.getMonth())+1+“/”+date.getDate()+“/”+date.getFullYear()+”“+strTime
返回新的_格式_值;
}
这种方式完全按照预期工作,但当他们在
IE10、IE11
中访问时,我在控制台中得到
无效日期
错误


有人能帮我吗

您可以使用momentjs和自定义格式设置日期

更多格式请访问

var日期=时刻('2019-03-12T02:39:38.197+0000');
console.log(日期格式('MM-DD-YYYY hh:MM A'))


如果不添加外部库,我们还有其他方法吗
2019-03-12T02:39:38.197+0000此格式不是javascript格式??不管怎样,您编写的脚本导致错误的日期它被设置为
10:39 AM
date只识别特定的格式,并且您没有告诉它您的输入格式的选项,您必须为您的值解析字符串。momentjs是处理日期值的非常流行的库使用哪个版本的jqGrid?@TonyTomov
4.15.5
您认为jqGrid版本有问题吗?为什么您使用自定义格式化程序而不是使用预定义的
格式化程序:“日期”
?您能否在JSFIDLE中提供演示,它再现了这个问题?哪一行代码会生成错误“无效日期”消息?我想它是
var-date=新日期(cellvalue)。我猜您的一些输入数据不能用作
Date
的参数,您必须在之前包含一些额外的测试。我认为最好的选择是使用
formatter:“date”
formattoptions
的相应
srcformat
newformat