JavaScript 总是使用当前服务器(或浏览器)时区创建一个 Date 对象。即如果我new Date("2011-10-10T14:48:00-06:00")在我的笔记本电脑上这样做,我就会得到Mon Oct 10 2011 22:48:00 GMT+0200一个结果。但如果我这样做了,new Date("2011-10-10T14:48:00")我就会有Mon Oct 10 2011 14:48:00 GMT+0200结果。因此,我的 Date 对象始终将时区设置为我的笔记本电脑的时区,但这-06:00会影响解析阶段对字符串日期的解释。除了设置TZ=<...>环境变量(仅适用于 Node.js)之外,没有办法影响这种行为。JavaScriptDate对象不公开任何使用时区的方法。如果您需要更复杂的时区处理,请考虑使用momentjs-timezone包。但请注意,它非常庞大,有时速度很慢。