前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >JS-流程控制汇集

JS-流程控制汇集

作者头像
xing.org1^
发布2018-05-17 16:51:19
5.9K0
发布2018-05-17 16:51:19
举报
文章被收录于专栏:前端说吧前端说吧
代码语言:javascript
复制
<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title>流程控制</title>
		<style type="text/css">
			.mg {
				display: inline-block;
				padding: 45px;
				padding-top: 5px;
				margin-bottom: 10px;
				border: 3px solid rosybrown;
				-webkit-border-radius: 23px;
				-moz-border-radius: 23px;
				border-radius: 23px;
			}
 
			input {
				-webkit-border-radius: 12px;
				-moz-border-radius: 12px;
				border-radius: 12px;
				border: 1px solid royalblue;
				padding: 10px;
			}
 
			#dx {
				width: 100px;
				text-align: center;
			}
		</style>
		<script type="text/javascript">
			//1-- if else多重
			//		cc()函数,通过练习if else,执行一个多重的判断语句,来得到一个人的成绩处于什么水平并通过innerHTML写进标签内
			function cc() {
				var vj = parseInt(prompt('请输入你的成绩'));
				var nr = document.getElementById('h1');
				nr.style.textAlign = 'center';
				var cc = document.getElementById('cc');
				cc.value = vj;
				if(vj != undefined) { //不为空的情况下再进行判断
					if(vj >= 0 && vj < 60) {
						nr.innerHTML = '很遗憾!你没有通过考试。加油了!'; //把总结写到一个h1里边
						cc.style.color = nr.style.color = 'red'; //不同的成绩不同的颜色表示
					} else if(vj >= 60 && vj < 75) {
						nr.innerHTML = '恭喜你获得了良好的成绩!';
						cc.style.color = nr.style.color = 'green';
					} else if(vj >= 75 && vj < 85) {
						nr.innerHTML = '可以,成绩很好呀!继续加油!';
						cc.style.color = nr.style.color = 'royalblue';
					} else if(vj >= 85 && vj <= 100) {
						nr.innerHTML = '你很优秀!超级棒!请继续努力!';
						cc.style.color = nr.style.color = 'darkmagenta';
						//						nr.style.backgroundColor = 'green';
					} else if(vj < 0 || vj > 100) { //如果输入超出的不符合成绩值,也弹出提醒
						alert('别闹了,快输入你的正确成绩吧!');
					} else {
						alert('正经点!!不要输入非法值。')
					}
				} else {
					alert('怎么还不舍得告诉我么?快快输入有效的成绩值啊!');
				}
			}
			//2--if else多重
			//		cb()函数,也是多重if else,通过value得到表单的值来判断这个年龄段是什么时候
			function cb() {
				var sv = document.getElementById('se_v').value;
				var tv = document.getElementById('t_sc');
				if(sv == '0-44') {
					tv.value = '青少年阶段';
				} else if(sv == '45-59') {
					tv.value = '中年时期';
				} else if(sv == '60-89') {
					tv.value = '老年时期';
				} else {
					tv.value = '长寿老人';
				}
			}
			//3--switch
			//    cj()函数练习switch,根据成绩写评语。注意对比switch和if else 的区别
			//			这里总是出现错误的是,标签内容你用value获取,而input的表单内容你反倒用innerHTML了,不报错也,但就是不对,切记切记、
			function cj() {
				var cj = parseInt(prompt('请输入你的成绩'));
				var hv = document.getElementById('hvs');
				switch(cj) {
					case 1:
					case 2:
					case 3:
					case 4:
					case 5:
						hv.innerHTML = '继续努力';
						break;
					case 6:
						hv.innerHTML = '及格,加油!';
						break;
					case 7:
						hv.innerHTML = '凑合,奋进!';
						break;
					case 8:
						hv.innerHTML = '很棒,很棒!';
						break;
					case 9:
					case 10:
						hv.innerHTML = '高手,大牛!';
						break;
				}
				document.getElementById('cj').value = cj;
				alert('h1的value要用innerHTML才能找得到' + '<br/>' + hv.innerHTML)
			}
			//4--switch
			// 	cd()制作多选情况下的输出内容
			//不成功
			function cd() {
				var dx = document.getElementById('dx').value;
				var dxv = document.getElementById('dxv');
				var arr = [];
				for(var i = 0; i < dx.length; i++) {
					arr[i] = document.getElementById('dx').value;
					dxv.innerHTML = arr + ',';
				}
				//				switch(dx){
				//					case '苹果':
				//					case '香蕉':
				//					case '橘子':
				//					case '油桃':
				//					case '柠檬':
				//					case '柚子':
				//					case '西瓜':
				//					case '菠萝':
				//					case '荔枝':
				//						
				//					break;
				//				}
			}
		</script>
	</head>
	<body>
		<div>
			<h1>知识点汇总</h1>
			<ol>
				<li> <strong>if </strong><br />单个是做判断(成,就执行。不成,就滚蛋!)</li>
				<li> <strong>if else  </strong><br />一组是二选一(成,执行条件1,否则,执行另一个)</li>
				<li> <strong>if else  </strong><br />多个是多重判断(多个条件看谁成,最后只执行成的那一个)</li>
				<li> <strong>switch  </strong><br />是多种选择(相比多组if else,可以同时执行多个满足条件后 的函数)</li>
				<li> <strong>for  </strong><br />是重复重复(遍历)</li>
				<li> <strong>while  </strong><br />是反反复复</li>
				<li> <strong>do while  </strong><br />是来来回回</li>
				<li> <strong>break  </strong><br />是退出循环</li>
				<li> <strong>continue  </strong><br />是跳过并继续循环</li>
			</ol>
		</div>
		<!--1-->
		<span class="mg">
			练习1 if else
			<h1 id="h1"></h1>
			<input type="text" id="cc" onclick="cc();" placeholder="输入成绩" />
		</span>
		<!--2-->
		<span class="mg">
			练习2 if else<br />
			<strong>请选择您的年龄段</strong>
			<select id="se_v">
				<option>0-44</option>
				<option>45-59</option>
				<option>60-89</option>
				<option>90以上</option>
			</select>
			<input type="button" value="提交" onclick="cb();" />
			<br />
			<input type="text" id="t_sc" />
		</span>
		<!--3-->
		<span class="mg">
			练习3:switch
			<h1 id="hvs"></h1>
			<input type="text" id="cj" onclick="cj();" placeholder="输入成绩" />
		</span>
		<!--4-->
		<span class="mg">
			练习4 switch<br />
			<p style="color: red;">不成功</p>
			<p>选出你喜欢的水果:</p>
			<strong>可多选</strong>
			<select id="dx" multiple="multiple">
				<option>苹果</option>
				<option>香蕉</option>
				<option>橘子</option>
				<option>油桃</option>
				<option>柠檬</option>
				<option>柚子</option>
				<option>西瓜</option>
				<option>菠萝</option>
				<option>荔枝</option>
			</select>
			<input type="button" value="提交" onclick="cd();" />
			<br /><span id="dxv"></span>
		</span>
		<!--4-->
		<script type="text/javascript">
			function xq() {
				var xqv = document.getElementById('xq').value;
				var jhv = document.getElementById('jh');
				switch(xqv) {
					case '星期一':
					case '星期二':
						jhv.innerHTML = '学习理念知识';
						jhv.style.color = 'red';
						break;
					case '星期三':
					case '星期四':
						jhv.innerHTML = '到企业实践';
						jhv.style.color = 'blueviolet';
						break;
					case '星期五':
						jhv.innerHTML = '总结经验';
						jhv.style.color = 'blue';
						break;
					case '星期六':
					case '星期日':
						jhv.innerHTML = '休闲娱乐';
						jhv.style.color = 'green';
						break;
				}
			}
		</script>
		<span class="mg">
			练习5 switch<br />
			看我的计划
			<select id="xq">
				<option>星期一</option>
				<option>星期二</option>
				<option>星期三</option>
				<option>星期四</option>
				<option>星期五</option>
				<option>星期六</option>
				<option>星期日</option>
			</select>
			<input type="button" value="提交" onclick="xq()" />
			<h3 id="jh"></h3>
		</span>
		<!--6-->
		<span class="mg">
			练习6 for
			<p>做100以内加法</p>
			<input type="button" value="结果" id="jg"/>
			<input type="text" id="jgv"/>
			<pre>这里,i应该<=100,没有=号是不可以的</pre>
		</span>
		<script type="text/javascript">
			var oJg = document.getElementById('jg');
			oJg.onclick = function() {
				var sum = 0;
				for(var i = 0; i <= 100; i++) { //注意=号
					sum += i;
				}
				document.getElementById('jgv').value = sum;
			}
		</script>
		<!--7-->
		<span class="mg">
			练习7 while
			<br/>用while语句,输出相应的数字
 
			<input type="button" value="填数字得结果" onclick="sc()" />
			<br />结果是<p id="sc"></p>
			<!--<input />-->
		</span>
		<script type="text/javascript">
			function sc() {
				var x = parseInt(prompt('请输入数字'));
				//			alert(x)
				if(isNaN(x)) { //判断如果是空或不是数字,就不执行
					alert('请输入数值后再确定')
				} else {
					var num = 1;
					while(num <= x) {
						//				document.write('<br/>取出第'+num);
						document.getElementById('sc').innerHTML += num + ',';
						//				alert(document.getElementById('sc').innerHTML);
						num = num + 1;
					}
				}
			}
		</script>
		<p>js思考,写法之——第一步,先思考简单的,给定的一个数字,让条件在这个给定的数字内循环。<br/>然后第二步修改完善提高代码,就是把死的数值变成可以让用户自己填写的数字。<br/>最后第三步继续修改,添加if代码以判断用户填入的是否是数值,且是否符合规范等</p>
		<!--8-->
		<span class="mg">
			练习8
			do while
			<p>确保代码先被执行一次再去做循环判断条件</p>
			<input type="button" value="填数字" onclick="dov()" />
			<span id="dov"></span>
		</span>
		<script type="text/javascript">
			//写法之——第一步,先思考简单的,给定的一个数字,让条件在这个给定的数字内循环。然后第二步修改完善提高代码,就是把死的数值变成可以让用户自己填写的数字。最后第三步继续修改,添加if代码以判断用户填入的是否是数值,且是否符合规范等
 
				//第一步示例
				//		var num = 1;
				//			do{
				//				document.getElementById('dov').innerHTML += num + ',';
				//				num++;
				//			}while(num <= 9);
				//第二步示例
				//			var numa = parseInt(prompt('请填写数字'));
				//			var numb = 0;			
				//			do{
				//				document.getElementById('dov').innerHTML += numb + ','; 
				//				numb ++;
				//			}while(numb <= numa);
				//第三步示例
				function dov() {
				var numa = parseInt(prompt('请填写数字'));
				var numb = 0;
				do {
					document.getElementById('dov').innerHTML += numb + ',';
					numb++;
				} while (numb <= numa);
				if(isNaN(numa)) {
					alert('快快随心输入正确数字吧!');
				} else {
				}
			}
		</script>
<h1>综合练习</h1>
		<p>根据获得的信息,组成数组,并从这一堆数据中找到大一女生的信息,然后把名字打印出来</p>
		<script type="text/javascript">
			var infos = [
			['小A','女',21,'大一'],
			['小B','男',23,'大三'],
			['小C','男',24,'大四'],
			['小D','女',21,'大一'],
			['小E','女',22,'大四'],
			['小F','男',21,'大一'],
			['小G','女',22,'大一'],
			['小H','女',20,'大三'],
			['小I','女',20,'大一'],
			['小J','男',20,'大三']
			];
//			alert(infos[0][1]);
			for(var i=0;i<infos.length;i++){
				var sex = infos[i][1];
				var clas = infos[i][3];
				var name = infos[i][0];
//				document.write(sex);
				if(sex == '女' && clas == '大一'){
					document.write(name+'<hr />');
				}else{
					continue;//这里得用continue,如果不符合的信息跳过去然后接着执行,如果用了break,则就会打出第一个小A的信息后就停止了
				}
			}
		</script>

	</body>
</html>
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2016-09-06 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档