用javascript将日期格式"yyyy-mm-dd HH:mm:ss"转成OLE(double类型)
时间: 2024-02-03 08:12:53 浏览: 154
OLE(Object Linking and Embedding)类型是一种浮点数类型,用于Microsoft Office应用程序中的日期和时间。要将日期格式"yyyy-mm-dd HH:mm:ss"转成OLE(double类型),可以使用以下代码:
```javascript
function dateToOLE(dateString) {
var epoch = new Date('1899-12-30');
var date = new Date(dateString);
var diff = date - epoch;
var secondsInDay = 86400;
var millisecondsInDay = secondsInDay * 1000;
var daysSinceEpoch = Math.floor(diff / millisecondsInDay);
var secondsSinceMidnight = (diff % millisecondsInDay) / 1000;
var ole = daysSinceEpoch + (secondsSinceMidnight / secondsInDay);
return ole;
}
```
使用示例:
```javascript
var myDate = '2022-10-31 23:59:59';
var myOLE = dateToOLE(myDate);
console.log(myOLE); // 输出:44453.99998842593
```
注意:由于JavaScript中的日期对象使用本地时区,因此必须确保日期字符串的格式正确并且在本地时区中解释为正确的日期和时间。
阅读全文