- xml - AJAX/Jquery XML 解析
- 具有多重继承的 XML 模式
- .net - 枚举序列化 Json 与 XML
- XML 简单类型、简单内容、复杂类型、复杂内容
我有对象数组。数组中的每个对象都有日期属性。我尝试从数组中获取最大(最后)日期。
这是数组:
var sensorsData = [{
Id: 1,
MeasureDate: "2017-08-20T09:52:32"
}, {
Id: 2,
MeasureDate: "2017-08-20T09:54:35"
}, {
Id: 3,
MeasureDate: "2017-08-20T09:56:13"
}];
这是从上面的数组中获取最大日期的函数:
function updateLatestDate(sensorsData) {
return new Date(Math.max.apply(null, sensorsData.map(function(e) {
return new Date(e.MeasureDate);
}))).toISOString();
}
我从 updateLatestDate
函数得到的结果是:
2017-08-20T06:56:13.000Z
但这很奇怪,因为正如您所看到的,sensorsData 对象中没有一个属性没有从 updateLatestDate
函数返回的日期。
这里是 FIDDLER .
知道为什么 updateLatestDate 函数返回错误结果吗?
最佳答案
当您使用 new Date(str)
创建日期时,它会创建一个带有时区的日期对象。 toISOString()
使其 UTC 偏移量为零,如后缀“Z”所示。
解决方法如下:
var date = new Date(e.MeasureDate)
return new Date(date.getTime() - date.getTimezoneOffset() * 60000)
更新 fiddler :https://jsfiddle.net/xf5jmLL6/7
getTimezoneOffset
返回分钟数,new Date
预计自 1970 年 1 月 1 日 00:00:00 UTC 以来的毫秒数,因此乘以 60000 可提供所需的调整。
关于javascript - toISOString() 更改日期时间值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45779894/
我一直在使用toISOString在通过 jQuery 发送到服务器之前序列化 momentJS 日期。它对我来说很好,除了它将日期转换为 UTC 但我需要保留本地时区。 momentJS 有这个方法
toISOString 方法返回不正确的日期。 // Input var a = new Date("June 08, 2018"); a.toISOString().slice(0
为什么这段代码返回明天的日期? 它必须返回 2013-08-31 而不是 2013-09-01,因为我们是 8 月 31 日。 http://www.w3schools.com/jsref/tryit
考虑以下代码 HTML + JavaScript: Click the button to display a date after changing the hours, minutes, a
我有对象数组。数组中的每个对象都有日期属性。我尝试从数组中获取最大(最后)日期。 这是数组: var sensorsData = [{ Id: 1, MeasureDate: "2017-08
这个问题在这里已经有了答案: How to ISO 8601 format a Date with Timezone Offset in JavaScript? (20 个答案) 关闭 3 年前。
这个问题在这里已经有了答案: How to convert a PHP DateTime object to ISO string? (3 个回答) 3年前关闭。 我想要一个像 new Date().
这个问题已经有答案了: Where can I find documentation on formatting a date in JavaScript? (39 个回答) 已关闭 8 年前。 如何
我对 javascript Date.toISOString() 函数感到困惑,如下例所示,ISO 格式的 x 的日期值为什么变成一月? const date = new Date(); const
这让我很困惑,我不知道为什么会发生 - 希望能得到一些见解。 这可以很好地将当前日期和时间转换为 ISO8601 格式: var today = new Date().toISOString(); c
代码有问题吗 var mom = moment("23-11-2016 00:00", "DD-MM-YYYY HH:mm"); alert(mom.toISOString()); //result
我正在使用 currentDate.toISOString(),它以“2013-01-15T12:08:54.135Z”格式提供输出。 但我需要日期格式为“2013-01-15T12:08:54-06
我正在为 ISOString 创建一个新日期 - new Date(03-13-2016 00:00).toISOString(); 这在 IE 和 Chrome 中工作正常,但在 FireFox 中
好的,我有一个场景,我将日期与数据库中的日期进行比较。日期采用这种格式 "2016-11-16T18:00:19.000Z" 并且当我使用 var time = moment().toISOStrin
这个问题在这里已经有了答案: How to ISO 8601 format a Date with Timezone Offset in JavaScript? (21 个回答) 关闭 7 年前。
来自此函数的描述 https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Date/toISOStr
我将日期作为字符串给出,然后尝试将其转换为 ISO。 这是我一直在做的事情: var dateValue = "Tue Sep 29 2015 16:50:00 GMT+0530 (IST)" ale
假设我们有这个日期时间: var d = new Date("Sat Jul 21 2018 14:00:00 GMT+0200"); 将其导出为字符串 (console.log(d)) 会在浏览器之
我正在尝试在 Golang 中生成 ISO 8601 时间戳。 做 time.Now().UTC().Format(time.RFC3339) //2016-04-12T19:32:20Z 在 Jav
本文整理了Java中io.debezium.time.ZonedTimestamp.toIsoString()方法的一些代码示例,展示了ZonedTimestamp.toIsoString()的具体用
我是一名优秀的程序员,十分优秀!