您的位置:首页 > Web前端 > JavaScript

计算天数 - javascript

2015-04-17 23:37 113 查看
在JS练习题中,有这么一道:

请计算某天是这一年的第几天。

首先,我们要看此年是否闰年

var IsLeapYear = function (year) {
var flag = false;

if ( ((year % 4 == 0) && (year % 100 != 0)) || (year % 400 == 0) )
flag = true;

return flag;
};


其次,累加每月天数。

for (var i = 0; i < month - 1; i++) {
iDay += months[i];
}
其中months为数组

var months = new Array(31, day2, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31);
day2如果是闰年赋值29,否则28。

if (IsLeapYear(iYear)) {
day2 = 29;
} else {
day2 = 28;
}


附:

calDay.js

/*
* xiaobin in SYSIT schools completed
*/
var MY = {};

MY.DayOfYear = function(year, month, day) {
var day2 = 0;
var iDay = 0;

var date = new Date();
date.setFullYear(year, month, day);
var iYear = date.getFullYear();

var IsLeapYear = function (year) {
var flag = false;

if ( ((year % 4 == 0) && (year % 100 != 0)) || (year % 400 == 0) )
flag = true;

return flag;
};

if (IsLeapYear(iYear)) {
day2 = 29;
} else {
day2 = 28;
}

var months = new Array(31, day2, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31);

for (var i = 0; i < month - 1; i++) {
iDay += months[i];
}

iDay += day;

SetInputVal(iDay);

return iDay;
};

function SetInputVal (value) {
var val = document.getElementById("daySum");
val.value = value;
};


calDay.html

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Example01</title>
<script type="text/javascript" src="calDay.js" > </script>
</head>

<body>
<p>
<br>
<input type="text" id="daySum" >
<input type="button" id="test02"  value="cal day" onClick="MY.DayOfYear(2000, 2, 8)">
</p>

</body>
</html>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: