js相关的四个小练习,输出闰年,判断红白黑三个球的个数,显示星期几,有一个排好的数组,插入一个数,按照原来的规律再次排序后输出。

1. 判断闰年并采用不同的方式输出。

//  算法:能被4整除且不能整除100的为闰年(如2020年就是闰年,1901年不是闰年)或者能够被 400 整除的就是闰年
// 弹出prompt 输入框,让用户输入年份,把这个值取过来保存到变量中
// 使用 if 语句来判断是否是闰年,如果是闰年,就执行 if 大括号里面的输出语句,否则就执行 else里面的输出语句
// 一定要注意里面的且 &&  还有或者 || 的写法,同时注意判断整除的方法是取余为 0
<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>输出闰年</title>
		<script type="text/javascript">
			var a=prompt("请输入一个年份:");
			if(a%4==0&&a%100!=0||a%400==0){
				alert("你输入的年份是闰年!");
				
			}else{
				alert("你输入的年份是平年");
			}
		</script>
	</head>
	<body>
	</body>
</html>

2. 有红、白、黑三种球若干个,其中红、白球共25个,白、黑球共31个,红、黑球共28个,求这三种球各有多少个?

//采用假设的方法,红球最多有25个,白球最多有31个。
<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>红球白球黑球</title>
		<script type="text/javascript">
			for(var w=0;w<=31;++w){
				var r=25-w;
				var b=31-w;
				if(r+b==28){
					document.write('红球 '+r+'白球 '+w+'黑球'+b);
				}
			}
		</script>
	</head>
	<body>
	</body>
</html>

3. 根据系统的时间显示星期几(用switch实现)

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>显示星期几</title>
	</head>
	<body>
	//分成三块,文字、日期和时间、星期。因为我的样式是要在一行里面全部显示的,所以三块都是用行级标签span标签。日期时间还有星期是需要用js来获取到实时时间,所以分别给他们一个id。
		<span>当前时间:</span>
		<span id="time">
		</span>
		<span id="xq">
		</span>
		<script type="text/javascript">
	//我们需要实现的是动态显示的时间,1秒更新一次数据,所以页面需要1秒刷新一次,用setInterval()方法可以实现。setInterval(code,millisec)按照指定的周期(以毫秒计)来调用函数或计算表达式。code是要调用的函数或要执行的代码串,必须写的。millisec周期性执行或调用 code 之间的时间间隔,以毫秒计,也是必须的。1000毫秒=1秒。
			window.onload=function(){
				setInterval("clock()",1000);
			}
			function clock(){
				d = new Date();
				var spt=document.getElementById("time");
				spt.innerHTML=d.getFullYear()+"-"+(d.getMonth()+1)+"-"+d.getDate()+""+d.getHours()+":"+d.getMinutes()+":"+d.getSeconds();
				var spweek=document.getElementById("xq");
				spweek.innerHTML=week();	
			}
			function week(){
				var weekday=d.getDay();
				switch(weekday){
					case 0:
					return "星期天";
					break;
					case 1:
					return "星期一";
					break;
					case 2:
					return "星期二";
					break;
					case 3:
					return "星期三";
					break;
					case 4:
					return "星期四";
					break;
					case 5:
					return "星期五";
					break;
					case 6:
					return "星期六";
					break;	
				default:
					 return  false;
					 break;
				}
			}
		</script>
	</body>
</html>

用到一些方法,记录一下。
document.getElementById(id)通过id获得html中的控件,也是将事件和响应行为绑定起来

getFullYear() 获得年份

getMonth() 获得月份(返回的是011,需要在后面+1变成112)

getDate() 获得一月中的日(返回的是1~31)

getHours() 获得小时

getMinutes() 获得分钟

getSeconds() 获得秒数

Object.innerHTML=HTML向某对象插入内容

Object.innerTEXT=TEXT

innerHTML可以插入包含html语法的内容,它是可以对html代码进行识别并转换。

innerTEXT可以向某对象插入内容,但它并不对html代码进行识别,会把html代码当做字符串插入,就是输入的是什么就是什么。

所以一般建议使用innerHTML。

4. 有一个从大到小排好序的数组{99,85,82,63,60}。现从页面输入一个数,要求按原来的规律将它插入数组中。 假设你输入的80,则应该插入到82和63之间。

示例如下:

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>数组插入比较</title>
	</head>
	<body>
		<script type="text/javascript">
		//定义一个数组
			var a=[99,85,82,63,60];
			//push插入函数
			a.push(prompt("请输入一个数字:"));
			//进行比较
			a.sort(function(a,b){
				return a-b;
			})
			//由于要按照原有规律排序,这里再调用reverse函数将排序进行颠倒。
			a.reverse();
			console.log(a);
		</script>
	</body>
</html>

你可能感兴趣的