toGMTstring()和toUTCstring()有什么区别?

我从Node.js应用程序(使用Mongoose )将数据保存在MongoDB服务器中。

考虑下面的代码:

var mongoose = require('mongoose'); var Schema = mongoose.Schema; var schemaObj = new Schema({ field1: String, field2: String, Datefield: Date//So on... }); mongooseDB = mongoose.createConnection('mongodb://myserver:port/DBname'); mongooseDB.on('error', console.error.bind(console, 'error in connection')); mongooseDB.once('open', function (err) { var objmodel = db.model('myschema', schemaObj); modelObj.field1 ='value1'; modelObj.Datefield = new Date().toGMTString(); //new Date().toUTCString(); //So on.. modelObj.save(function (err) { if (err) //Notify err else //DO some task after save }); }); 

在Datefield中,当我使用'toGMTstring()'或'toUTCstring()'

  'Thu, 24 Jan 2013 05:49:04 GMT' 

我经历了以下链接:

  • toUTCstring()
  • toGMTstring()

toGMTString已弃用,不应再使用

任何人都可以帮助我理解,关于Node.js toUTCstring()和toGMTstring()之间的区别是什么?

GMT和UTC是不同的时区,分别是格林威治平均时间和世界协调时间。 GMT是“太阳能”时区,而UTC是“primefaces”。 对于大多数目的来说,它们本质上是相同的,但是UTC更“普遍”。

有趣的是,您指向toUTCString的文档仍然显示GMT输出:

 var today = new Date(); var UTCstring = today.toUTCString(); // Mon, 03 Jul 2006 21:44:38 GMT 

对于应用程序之间的数据交换,我宁愿使用类似于ISO8601 ,它使用UTC的“Z”后缀:

 2013-01-16T08:19Z 

“Z”混淆地代表“祖鲁时间”!

从我所看到的他们是一样的。 而MDN的文档已经声明, toGMTString已经被弃用,以支持toUTCString

toGMTString()已弃用,不应再使用。 它只是为了向后兼容而实现的; 请使用toUTCString()代替。