我想Date通过javascript 转换日期字符串,使用此代码:
var date = new Date('2013-02-27T17:00:00');
alert(date);
Run Code Online (Sandbox Code Playgroud)
'2013-02-27T17:00:00' 是来自服务器的JSON对象的UTC时间.
但上述代码的结果在Firefox和Chrome之间有所不同:
Firefox返回:
Wed Feb 27 2013 17:00:00 GMT+0700 (SE Asia Standard Time)
Run Code Online (Sandbox Code Playgroud)
Chrome返回:
Thu Feb 28 2013 00:00:00 GMT+0700 (SE Asia Standard Time)
Run Code Online (Sandbox Code Playgroud)
这是不同的1天,我期望的正确结果是Chrome的结果.
演示代码:http://jsfiddle.net/xHtqa/2/
如何解决这个问题以从两者中获得相同的结果?
我在nodejs repl下执行下面的语句,我在同一日期得到两个不同的结果
var dateStr1 = "2015/03/31";
var dateStr2 = "2015-03-31";
var date1 = new Date(dateStr1);//gives Tue Mar 31 2015 00:00:00 GMT+0530 (IST)
var date2 = new Date(dateStr2);//gives Tue Mar 31 2015 05:30:00 GMT+0530 (IST)
Run Code Online (Sandbox Code Playgroud)
在第1小时,分钟,秒均为零,而在第2小时默认为小时,分钟设置为时区小时,分钟为5:30
我正在使用gmail API搜索来自用户的电子邮件.我创建了以下搜索查询:
ticket after:2015/11/04 AND -from:me AND -in:trash
Run Code Online (Sandbox Code Playgroud)
当我在Gmail的浏览器界面中运行此查询时,我收到11封邮件(正如预期的那样).但是,当我在API中运行相同的查询时,我只收到10条消息.我用来查询gmail API的代码是用Python编写的,如下所示:
searchQuery = 'ticket after:2015/11/04 AND -from:me AND -in:trash'
messagesObj = google.get('/gmail/v1/users/me/messages', data={'q': searchQuery}, token=token).data
print messagesObj.resultSizeEstimate # 10
Run Code Online (Sandbox Code Playgroud)
我将相同的消息发送到另一个Gmail地址并从该电子邮件地址进行了测试,并且(令我惊讶的是)它确实显示在使用该其他电子邮件地址的API搜索中,因此问题不在于电子邮件本身.
在通过各种测试gmail帐户无休止地通过电子邮件发送后,我认为(但不是100%肯定)浏览器界面搜索功能具有不同的定义"me".似乎在API搜索中它不包括来自具有相同名称的电子邮件地址的电子邮件,而这些结果实际上包含在浏览器搜索的结果中.例如:如果"Pete Kramer"把从电子邮件petekramer@icloud.com到pete@gmail.com(这都有自己的名称设置为"Pete Kramer"),它会在浏览器中搜索显示,它不会在API搜索显示.
任何人都可以确认这是问题吗?如果是这样,有没有办法绕过这个以获得与浏览器搜索返回相同的结果?或者是否有人知道为什么gmail浏览器搜索的结果与gmail API搜索不同?Al提示是受欢迎的!