Rob*_*Day 20 javascript jquery datetime
我需要使用JQuery来计算某人是否从出生日期起超过18岁.
var curr = new Date();
curr.setFullYear(curr.getFullYear() - 18);
var dob = Date.parse($(this).text());
if((curr-dob)<0)
{
$(this).text("Under 18");
}
else
{
$(this).text(" Over 18");
}
Run Code Online (Sandbox Code Playgroud)
必须有一些更简单的函数来比较日期,而不是使用setFullYear和getFullYear方法.
注意:我想要找到新方法的实际原因是代码的长度.我必须将此代码放入一个限制为250个字符的数据库字段中.更改数据库不是快速或轻松发生的事情.
Ken*_*ing 25
您可能会发现开源Datejs库很有帮助.特别是addYears功能.
var dob = Date.parse($(this).text());
if (dob.addYears(18) < Date.today())
{
$(this).text("Under 18");
}
else
{
$(this).text(" Over 18");
}
Run Code Online (Sandbox Code Playgroud)
以更简洁的方式:
$(this).text(
Date.parse($(this).text()).addYears(18) < Date.today() ?
"Under 18" :
" Over 18"
)
Run Code Online (Sandbox Code Playgroud)
Date.prototype.age=function(at){
var value = new Date(this.getTime());
var age = at.getFullYear() - value.getFullYear();
value = value.setFullYear(at.getFullYear());
if (at < value) --age;
return age;
};
var dob = new Date(Date.parse($(this).text()));
if(dob.age(new Date()) < 18)
{
$(this).text("Under 18");
}
else
{
$(this).text(" Over 18");
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
51926 次 |
| 最近记录: |