Javascript:如何将 exif 日期时间数据转换为时间戳?

标签 javascript date datetime exif exif-js

这个问题在这里已经有了答案:





javascript: how to parse a date string

(4 个回答)


5年前关闭。




在 javascript 中,使用 exif-js 提取图像文件的元数据时,我得到的日期时间格式为 2017:03:09 14:49:21。

DateTimeOriginal 属性中的值格式为 YYYY:MMY:DD HH:MM:SS。当我使用 var d = new Date(2017:03:09 14:49:21) 时,它返回 NaN。导致问题的是 YYYY、MM 和 DD 之间的冒号。

如何解决这个问题呢?

提前致谢。

最佳答案

不要使用内置解析器(即 Date 构造函数或 Date.parse)来解析字符串,因为它很大程度上依赖于实现且不可靠。如果您可以相信日期是有效的,那么将执行以下操作:

/* Parse date string in YYYY-MM-DD hh:mm:ss format
** separator can be any non-digit character
** e.g. 2017:03:09 14:49:21
*/
function parseDate(s) {
  var b = s.split(/\D/);
  return new Date(b[0],b[1]-1,b[2],b[3],b[4],b[5]);
}

console.log(parseDate('2017:03:09 14:49:21').toString());


向值添加验证相当容易。否则,请使用库并确保指定要解析的格式。

关于Javascript:如何将 exif 日期时间数据转换为时间戳?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43083993/

相关文章:

javascript - ubuntu pm2命令运行node-express站点

JavaScript 通过类名和标签名获取元素

date - XSLT 2.0 : Calculate age from DOB

python - 如何在 python 中使用带有 datetime 对象的时区?

javascript - ZingChart - 如何在实时提要中附加值时保持缩放级别

javascript - 我们如何从 Redux - saga 中的 store.dispatch 返回一个 Promise,以便我们可以等待解析然后在 SSR 中渲染?

objective-c - 如何使用这种格式将 NSString 转换为 NSDate : "2012-08-01T12:43:35+02:00"?

date - 查询和今日功能

php - Yii:如何在 View 中格式化日期时间并按年份搜索

javascript - Safari JS 无法解析 YYYY-MM-DD 日期格式?