Tag: datetime

将date转换为nodejs中的ISOString时,时间会发生变化

我有我的数据库中有这样的格式的datestring: Tue Nov 12 2013 18:14:46 GMT+0100 (CET) 我想把它转换成一个ISOString和IM目前正在做: var iso = new Date(val.text_date).toISOString(); 但是由于某种原因,输出时间会向后移动1个小时? 这是我得到的输出: 2013-11-12T17:14:46.000Z 我怎样才能避免这一点?

Moment.js 24小时时间格式,处理24小时

我正在使用momentjs来检查火车旅行的两个时间戳之间的分钟差异。 我使用的API以24小时制格式返回数据(momentjs:HH:mm:ss)。 如果旅程继续到第二天,则时间显示为例如“24:12:00”,这很奇怪。 Momentjs无法处理这个问题,如果我尝试用这些值来计算时间差异,我会得到“NaN”。 所以我创build了一个函数将任何“24”出现转换为“00”。 function maintainHour (timeString) { var splitted = timeString.split(':'); if(splitted[0] == '24') { splitted[0] = '00'; } return splitted[0] + ':' + splitted[1] + ':' + splitted[2]; } 如果我使用diff()函数来检查一个时间戳和具有“00”小时的时间戳之间的差异,我不能区分它是当前date还是第二天的时间戳。 因此,如果当前时间是16:00(例如今天上午),而不是正X分钟,直到即将到来的一天的24小时,那么差异将在-900左右。 任何想法如何处理这个?

我如何将非标准的date和时间文本转换为XDate对象?

多解释一下情况; 我们有一个非标准的文本时间和datestring ,这些string变化很大,需要parsing成一个XDate ( http://arshaw.com/xdate/ )对象(可能是多个XDate对象)。 请注意, 我不是在寻找某人来完整编写代码 。 只是一些理论和快速代码片段来处理所有可能的情况(即使是失败 )。 此外,这不是一项家庭作业 。 我的第一个解决scheme是使用split()但是失败了。 我看到的一些其他的可能性是regex , pattern matching , loop text until not ascii , number picker from string等。 一旦失败,我很可能会产生一些随机的工作时间。 避免失败尤为重要。 我不确定最好的方法是什么。 任何和所有的帮助,高度赞赏。 这只是一些可能性。 每条线代表一种可能性。 date和时间: 星期一上午6点 – 下午8点 周一至周五上午6点至晚上8点 星期一,星期三,星期五晚上12点 – 晚上9点 周一至周四,周日上午11点至晚上8点 周一中午12点至晚上10点,周二中午12点至晚上10点,周三中午12点至晚上10:00 周一至周五上午10点至晚上10点,周六上午10点至凌晨1点,周日上午10点至上午9点,随机发送文字 周一上午11点至上午12点,周二上午11点至上午12点,周一至周日上午11点至上午2点 星期一11:00-21:00,星期二11:00-21:00,星期三11:00-21:00 星期一上午11:00-8:30pm;上午11:00-8:30pm;上午11:00-8:30pm;星期一11:00 am-8:30pm; 结果: 输出将是格式的JSON对象: { mon_open: "6:00 […]

MySQL数据库的ISO 8601时间戳:MySQL错误的date时间值

错误日志: {[错误:错误的date时间值:'2012-08-24T17:29:11.683Z'列1'机器人_refreshed_at']数字:1292,sqlStateMarker:'#',sqlState:'22007',消息:'不正确datetime value:\'2012-08-24T17:29:11.683Z \'for'\'robot_refreshed_at \'at row 1',sql:'INSERT INTO users(id,name,count_moments,count_likes,count_followers,rob ot_refreshed_at,robot_count_followers )值('1834084','NNNyingzi','5','0','0','2012-08-24T17:29:11.683Z',' 0)',setMaxListeners:[Function],emit:[Function],addListener:[Function],on:[Function],once:[Function],removeListener:[Function],removeAllListeners:[Function] [function]} 我在我的Node.js使用这段代码 if s instanceof Date return s.toISOString() 并在数据库中更新它们。 SQL插入expression式如下所示: INSERT INTO users (id,name,count_moments,count_likes,count_followers,rob ot_refreshed_at,robot_count_followers) VALUES (\'1834084\',\'NNNyingzi\',\'5\',\ '0\',\'0\',\'2012-08-24T17:29:11.683Z\',\'0\') 我做错了什么? 我刚刚从服务器中的表中使用PHPMyAdmin复制表。 非常感谢。

node.js返回GMT时间,而不是“new Date()”的本地时间。 这是一个错误?

如果不是一个错误,如何告诉节点我的时区? 如果错误,这是否已经报告?

比较MongoDB中的两个date字段

在我的collections中,每个文档有2个date,修改和同步。 我想find那些修改>同步,或同步不存在。 我试过了 {'modified': { $gt : 'sync' }} 但是没有显示出我的预期 有任何想法吗? 谢谢

在MongoDB中汇总当地时区

我正在build设将在意大利使用的mongodb和nodejs应用程序。 意大利时区为+02:00。 这意味着如果有人在7月11日凌晨1点保存一些数据,那么它将被保存为7月10日晚上11点,因为mongo以UTC保存date。 我们需要显示明智的tx计数。 所以我通过查询date进行了分组。 但它显示前一天的TX。 什么应该是这个解决方法。 > db.txs.insert({txid:"1",date : new Date("2015-07-11T01:00:00+02:00")}) > db.txs.insert({txid:"2",date : new Date("2015-07-11T05:00:00+02:00")}) > db.txs.insert({txid:"3",date : new Date("2015-07-10T21:00:00+02:00")}) > db.txs.find().pretty() { "_id" : ObjectId("55a0a55499c6740f3dfe14e4"), "txid" : "1", "date" : ISODate("2015-07-10T23:00:00Z") } { "_id" : ObjectId("55a0a55599c6740f3dfe14e5"), "txid" : "2", "date" : ISODate("2015-07-11T03:00:00Z") } { "_id" : ObjectId("55a0a55699c6740f3dfe14e6"), "txid" : "3", "date" : […]

如何使用时间戳上的NOW()来更新Sequelize?

我正在尝试做如下的事情: model.updateAttributes({syncedAt: 'NOW()'}); 显然,这不起作用,因为它只是作为一个string传递。 我想避免传递一个节点构造的时间戳,因为后来我将它与另一个“ON UPDATE CURRENT_TIMESTAMP”字段进行比较,数据库和源可能运行不同的时间。 我唯一的select只是build立一个数据库程序并调用它?

sequelize.js TIMESTAMP不是DATETIME

在我的node.js应用程序中,我有几个模型,我想定义TIMESTAMPtypes的列,包括默认的时间戳created_at和updated_at 。 根据sequelize.js的文档 ,只有一个DATE数据types。 它在MySQL中创buildDATETIME列。 例: var User = sequelize.define('User', { … // columns last_login: { type: DataTypes.DATE, allowNull: false }, … }, { // options timestamps: true }); 是否有可能生成TIMESTAMP列呢?

如何使用nodejs的节点date时间库格式Ymd H:M:S获取当前date时间?

我正在使用节点date时间库。 我想要获得当前的date时间格式,如年 – 月 – 日 – 分 – 秒 例如: 2016-07-04 17:19:11 var dateTime = require('node-datetime'); var dt = dateTime.create(); dt.format('m/d/YH:M:S'); console.log(new Date(dt.now())); 但是我的结果如: Mon Jul 04 2016 17:19:11 GMT + 0700(东南亚时间)