javascript - 无法让 JavaScript 弹出闰年警报

标签 javascript date

<button onclick="isleap(1992)">Try it</button>​

function isleap(year);
{
var yr=document.getElementById("year").value;
if ((parseInt(yr)%4) == 0)
{
 if (parseInt(yr)%100 == 0)
 {
 if (parseInt(yr)%400 != 0)
 {
 alert("Not Leap");
 return "false";
 }
  if (parseInt(yr)%400 == 0)
  {
  alert("Leap");
    return "true";
    }
  }
  if (parseInt(yr)%100 != 0)
  {
    alert("Leap");
    return "true";
  }
 }
 if ((parseInt(yr)%4) != 0)
 {
    alert("Not Leap");
    return "false";
 } 
}

http://jsfiddle.net/kcyCd/

在弄清楚如何获取代码来弹出带有闰年答案的警报框时遇到问题。

最佳答案

一个简单的 isLeapYear 函数是:

function isLeapYear(year) {
  var d = new Date(year, 1, 29);
  return d.getMonth() == 1;
}

它只是查看 2 月 29 日是否出现在给定年份。您应该能够执行以下操作:

function isLeapYear2(year) {
  return !!Date.parse(year + '-02-29');
}

基于解析无效日期应返回 NaN,其类型转换为 false,但并非所有浏览器都正确实现 Date.parse 。例如

isLeapYear2('2001'); // false in Firefox, true in IE

关于javascript - 无法让 JavaScript 弹出闰年警报,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13261370/

相关文章:

javascript - 如何使用 jquery/javascript 将值插入到 javascript 对象中

javascript - 如何知道 React 中的 Client 是 env prod 还是 staging

javascript - AngularJS 在表格内验证没有表单的输入

javascript - 搜索 JavaScript 对象

sql - 如何处理postgresql日期字段中的空值

javascript - 使用 cookie 获取月份、日期和时间。但是,它们没有打印,而且我的日期未定义?

JavaScript - 插入 HTML 的内容部分

PHP DateTime::createFromFormat 忽略闰年

java - ManagementFactory.getRuntimeMXBean().getUptime() 格式化以显示日、小时、分钟和秒

sql - PostgreSQL 查询 WHERE 日期大于 3 年