2010-07-12 67 views
1
d.getTime().toString().search(/Wed/i) 

我不明白它... typeof返回字符串,如果我复制并粘贴“Wed Jul 14 2010 15:35:53 GMT-0700(PST)”并将其保存到了var str,做str.search(/Wed/i)返回0但是当我做它像上面我总是得到-1,甚至寿,正如我所说的,它返回一个字符串的typeof。为什么在JavaScript中返回-1

任何想法如何检查,如果周三是在海峡?

仅供参考,我通过循环7天,检查星期三,如果是结婚,我保存当前的日期和跳出循环。如果你知道更好的方式,让我知道。现在我只是做毫秒的while(x<=6)

回答

9

getTimeDate返回人数自1 1970年1月,所以不会包含字符串'Wed'

也许你的意思是d.toString().search(/Wed/i)呢?

如果dDate一个实例,然后检查一个更好的办法,如果它是一个周三将是检验如果getDay结果是3:

d.getDay() == 3 
+0

哇,即时通讯白痴,谢谢。我知道这一点......长时间工作与JS数字显然:) – 2010-07-12 22:49:19

+0

仅供参考,虐待标记这一点在此刻正确...我必须等待7分钟... – 2010-07-12 22:49:45

+0

谢谢,杜,改为3.你摇滚 – 2010-07-12 22:53:04

1

它返回的原因-1是“星期三”永远不会出现在你的字符串,因为“的getTime()”返回一个巨大的数字:从epoch的毫秒数。

上大数目

调用“的toString()”仍然返回一个很大的数字,以数字格式化为一个字符串,如“1278975122089”。它不会返回日期和时间,如“2010年7月12日15时49分59秒”。

的的getTime()方法返回自1970年1月1日午夜 和指定 日期 毫秒数。

尝试使用,而不是下面的,没有的getTime()调用:

d.toString().search(/Wed/i)