比较Selenium IDE中的日期

Comparing dates in Selenium IDE

本文关键字:日期 IDE Selenium 比较      更新时间:2023-09-26

以下内容用于比较出生日期并确认个人年龄在10岁或以上。它似乎是有效的,但是我想要一些建议来改进或确保我的逻辑在SeleniumIDE中的日期比较是正确的。我需要根据这个建议使用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,你可以跳过语义。。。

对不起,没有时间放入硒化酶