Vérifiez si l'année est bissextile en javascript [dupliquer]
Cette question a déjà une réponse ici:
- javascript pour trouver l'année bissextile 7 réponses
function leapYear(year){
var result;
year = parseInt(document.getElementById("isYear").value);
if (years/400){
result = true
}
else if(years/100){
result = false
}
else if(years/4){
result= true
}
else{
result= false
}
return result
}
C'est Ce que j'ai jusqu'à présent (l'entrée est sur une de ainsi stockés dans "isYear"), en gros, j'ai suivi ce ici, donc, en utilisant ce que j'ai déjà, comment puis-je vérifier si l'entrée est une année bissextile, sur la base de ces conditions(remarque j'ai peut-être mal lors de l'implémentation du pseudocode, veuillez me corriger si j'ai) Edit: notez que cela doit utiliser un entier pas une fonction de date
7 réponses
function leapYear(year)
{
return ((year % 4 == 0) && (year % 100 != 0)) || (year % 400 == 0);
}
La fonction vérifie si février a 29 jours. Si c'est le cas, nous avons une année bissextile.
function isLeap(year) {
return new Date(year, 1, 29).getDate() === 29;
}
ES6
let isLeap = (year) => new Date(year, 1, 29).getDate() === 29;
isLeap(1004) // true
isLeap(1001) // false
Si vous faites cela dans un nœud.js app, vous pouvez utiliser le paquet année bissextile :
npm install --save leap-year
Ensuite, à partir de votre application, utilisez le code suivant pour vérifier si l'objet année ou date fourni est une année bissextile:
var leapYear = require('leap-year');
leapYear(2014);
//=> false
leapYear(2016);
//=> true
L'utilisation d'une bibliothèque comme celle-ci a l'avantage de ne pas avoir à traiter les détails sales de tous les cas spéciaux, puisque la bibliothèque s'en occupe.
Une solution plus rapide est fournie par Kevin P. Rice ici: https://stackoverflow.com/a/11595914/5535820 Voici donc le code:
function leapYear(year)
{
return (year & 3) == 0 && ((year % 25) != 0 || (year & 15) == 0);
}
Vous pouvez utiliser le code suivant pour vérifier si c'est une année bissextile:
ily = function(yr) {
return (yr % 400) ? ((yr % 100) ? ((yr % 4) ? false : true) : false) : true;
}
Mon Code Est Très Facile À Comprendre
var year = 2015;
var LeapYear = year % 4;
if (LeapYear==0) {
alert("This is Leap Year");
} else {
alert("This is not leap year");
}
Vous pouvez essayer d'utiliser L'objet Date de JavaScript
new Date(year,month).getFullYear()%4==0
Cela renverra true ou false.