Javascript 硒化物中的日期比较

Javascript 硒化物中的日期比较,javascript,selenium-ide,Javascript,Selenium Ide,以下内容旨在比较出生日期,并确认该个人的年龄为10岁或以上。它似乎可以工作,但是我需要一些建议来改进或确保我的逻辑对于Selenium IDE中的日期比较是正确的。我是否需要使用Date.parse将它们转换为毫秒,或者这些正确的日期格式足以准确地比较它们 <tr> <td>storeEval</td> <td>new Date(&quot;${DateOfBirthYear}&quot;,&quot;${DateOfBir

以下内容旨在比较出生日期,并确认该个人的年龄为10岁或以上。它似乎可以工作,但是我需要一些建议来改进或确保我的逻辑对于Selenium IDE中的日期比较是正确的。我是否需要使用Date.parse将它们转换为毫秒,或者这些正确的日期格式足以准确地比较它们

<tr>
<td>storeEval</td>
<td>new Date(&quot;${DateOfBirthYear}&quot;,&quot;${DateOfBirthMonth}&quot;-1,&quot;${DateOfBirthDay}&quot;);</td>
<td>DateOfBirthAsDate</td>
</tr>
<tr>
<td>storeEval</td>
<td>new Date();</td>
<td>today</td>
</tr>
<tr>
<td>storeEval</td>
<td>(Date.prototype.addMonth = function(month) { var dat = new Date(this.valueOf()); dat.setMonth(dat.getMonth() + month); return dat; }); var dat = storedVars['today'];dat.addMonth(-120)</td>
<td>DateOfBirthEleven</td>
</tr>
<tr>
<td>storeEval</td>
<td>(storedVars['DateOfBirthEleven'] &lt; storedVars['DateOfBirthAsDate'] ) ? true : false</td>
<td>AgeOK</td>
</tr>

欢迎提出意见和建议

我会这样做:

var a = new Date('03/21/1980');
var b = new Date('03/21/1989');
console.log(a);
console.log(b);
var yearDiff = b.getYear() - a.getYear();
if( yearDiff >= 10) {
  console.log("over 10!");
}
else if (yearDiff >= 9) {
 //compare milliseconds for 1 year
 console.log("over 9!"); 
}
仅仅因为一年是不同的跳跃,等等。。。但是如果他们超过10,你可以跳过语义


抱歉,没有时间将代码放入seleniumese

代码看起来很好。如果它起作用,我不会更改它-在比较天数时比较毫秒不会有任何区别。

var yearDiff=b.getYear-a.getYear..这只是检查年份。。如果他们在这一年里年满10岁怎么办?这不是我的else语句所处理的吗?var b=新日期'03/20/1990';var b=新日期'03/22/1990';应分别给出=10。你的两个都给>=10。