📅  最后修改于: 2023-12-03 15:40:09.244000             🧑  作者: Mango
在 JavaScript 中,我们可以使用 Date()
对象来处理日期和时间。如果我们要判断一个日期是否大于 18 岁,我们需要将当前日期与 18 岁的出生日期进行比较。
要获取当前日期,我们可以使用以下代码:
const today = new Date();
这将创建一个 Date()
对象,其日期和时间设置为当前日期和时间。
我们可以使用 setFullYear()
方法来设置出生日期的年份,然后将月份和日期分别设置为 1 月和 1 日。以下代码可以计算出一个人 18 岁的出生日期:
const year = today.getFullYear() - 18;
const dob = new Date(year, 0, 1);
在上面的代码中,我们首先计算了 18 岁的年份,然后使用 Date()
构造函数创建一个新的 Date()
对象,并将年份设置为上面的值。我们将月份设置为 0(即 1 月),日期设置为 1 日。
现在我们有了当年的出生日期。如果我们要比较当前日期和出生日期,我们可以使用简单的 <
运算符来判断是否大于 18 岁。以下代码演示了如何比较日期:
if (dob > today) {
console.log("未满18岁");
} else {
console.log("已满18岁");
}
在上面的代码中,我们首先检查出生日期是否在当前日期之后。如果是,则表明当前日期还未到达 18 岁的出生日期,因此该人员未满18岁。否则,该人员已满18岁。
以下是在 JavaScript 中判断日期是否大于 18 岁的完整代码:
const today = new Date();
const year = today.getFullYear() - 18;
const dob = new Date(year, 0, 1);
if (dob > today) {
console.log("未满18岁");
} else {
console.log("已满18岁");
}
我们可以将上面的代码放在一个函数中,将日期作为参数传递。以下是示例函数:
function isOver18(dateOfBirth) {
const today = new Date();
const year = today.getFullYear() - 18;
const dob = new Date(dateOfBirth);
dob.setFullYear(year, 0, 1);
if (dob > today) {
return false;
} else {
return true;
}
}
console.log(isOver18("2004-01-01")); // false
console.log(isOver18("2002-01-01")); // true
在上面的代码中,我们创建了一个名为 isOver18()
的函数。我们将出生日期作为参数传递给该函数,该函数将返回一个布尔值,指示该人员是否已满18岁。
以上是如何在 JavaScript 中判断日期是否大于 18 岁的完整代码。我们使用了 Date()
对象来处理日期和时间,并通过比较当前日期和 18 岁出生日期来确定一个人是否已满18岁。