JavaScript基础

复习:

分支语句:
单分支语句:
if(条件){满足条件执行的代码}
赋值运算符

    +
    +=
    -=
    *=
    /=
    a = 1 ;
    a += 2 ; //a = a + 2 ;
    a -= 2 ;
    a /= 2 ;
    a %= 2 ;

从页面输入数据的方法
从页面输入的数据默认都是字符串类型
如果要进行数学类的运算,需要进行数据类型转换

   var a = window.prompt("请输入第一个数");
   var name = window.prompt("请输入您的姓名");

数据类型转换:

   //转换为数值类型
   //1 使用Number()
   a = "123456";
   //把a转化为数值类型并且保存到变量a中
   a = Number(a);
   //2 使用parseInt() 转换为整数的方法
   a = "123456";
   //把a转换为整数再保存到变量a中
   a = parseInt(a);
   //3 使用parseFloat()转换为浮点型数值
   a = "12345.6";
   a = parseFloat(a);

练习题

输入3个数,输出最大值,使用单分支语句实现
可以多次使用单分支语句
分析过程:
假设 a = 5,b=6,c=7
假设a最大,并且把a的值保存到变量max中.
1 max和b比较大小,如果max<b 就把b的值保存到max中,这样max中保存的就是a和b的最大值
2 max和c去比较大小,如果max小于c,就把c的值保存到max中,这样max中保存的就是最大值了

	<script>
			var a = Number(window.prompt(
				"请输入第一个数:"));
			var b = Number(window.prompt(
				"请输入第二个数:"));
			var c = Number(window.prompt(
				"请输入第三个数:"));
			var max = a ;
			
			if (max < b) {
				max = b ;
			}
			
			if (max < c) {
				max = c ;
			}
			document.write(a+","+b+","
			+c+"中最大的是" +max);
		</script>

双分支语句

如果 … 就… 否则 就…
if(条件){满足条件执行的语句}else{不满足条件执行的语句}
如果气温大于37度,就要吃雪糕,否则就继续搬砖

<script>
			var t = 37;
			var str = "";
			if (t >= 37) {
				str = "吃雪糕";
			} else{
				str = "去搬砖";
			}
			document.write(str);
	</script>

if-else语句的另类写法(简化版写法):
三目运算符

a=5,b=8;
max = a>b ? a : b ;
a>b 这是一个条件表达式
a >b ? a : b ; 条件表达式 a>b成立吗?成立就返回a,不成立就返回b

<script>
			a = 19 , b = 18;
			max = a > b ? "范冰冰" :"杨幂";
			document.write(max);
</script>
<script>
			var t = 37;
//			var str = "";
//			if (t >= 37) {
//				str = "吃雪糕";
//			} else{
//				str = "去搬砖";
//			}
            str = t >= 37 ? "吃雪糕":"去搬砖";
			document.write(str);

运算符

逻辑运算符 &
逻辑与 两个条件或者多个条件必须同时具备,那么这些条件之间的关系就是逻辑与的关系.
短路与 &&
当多个条件的前一个条件为false时,直接返回false,不再判断后续条件
电路中的串联
逻辑与

比如,丈母娘挑女婿:
两个条件:年收入: 20W
身高:1.7米
输入年薪和身高 输出丈母娘满意不满意
或者只要满足一个条件:年薪 5个亿

<script>
			nx = Number(window.prompt(
				"请输入年薪:(单位:万元)"));
			tall = Number(window.prompt(
				"请输入身高:(单位:米)"));
			if (nx >=20 & tall >=1.7) {
				document.write("不错");
			} else{
				document.write("加油");
			}
</script>

逻辑或 | (shift )
短路或 || 当前面的条件为true时不再判断后续的条件,直接返回true
电路 并联
逻辑或

逻辑 非
电路 短路
逻辑非
一般能使用短路就使用短路

闰年的判断:
什么是闰年?
1 能够被4整除 并且不能被100整除
year%4 == 0 && year%100 != 0
2 或者能够被400整除的年份
|| year%400 == 0
假设年份使用 year 表示 试着把上面的文本条件写成代码
输入一个年份,输出它是闰年还是平年

<script>
			//输入一个年份,判断它是不是闰年
			var year = Number(
				window.prompt("请输入一个年份:"));
			//判断闰年的条件保存到一个变量isrn
			var isrn = (year%4==0 && year%100!=0
			||year%400==0);
			/*var rn = "";
			if (isrn) {
				rn = "闰年";
			} else{
				rn = "平年";
			}*/
			//把分支语句改为三目运算实现
			var rn = isrn ? "闰年":"平年";
			document.write(year + "是" + rn);
		</script>

多重分支语句

3个分支语句
输入一个数,输出它是正数,负数还在零
if-else if-else
if(条件1){满足条件1执行的语句}
else if(条件2){不满足条件1满足条件2执行的语句}
else{不满足条件1,2,其它情况执行的语句}

<script>
			//输入一个数,输出它是正数,负数还在零
			var n = Number(window.prompt(
				"请输入一个数:"));
			var str = "";
			if(n>0){
				str = "正数";
			}else if (n == 0) {
				str = "零";
			} else{
				str = "负数";
			}
			document.write(n +"是" +str);
		</script>

多重分支:
if(条件1){满足条件1执行的语句}
[ else if(条件2){不满足条件1满足条件2执行的语句} [else if(条件3){不满足条件1,2满足条件3执行的语句}]…]
[else{不满足前面所有条件,其它情况执行的语句}]

自增自减运算符:只针对变量有效
自增运算符
后++
先取值再加1
先取值是针对后++这个表达式的取值,后++这个表达式的值就是变量的初始值,再加1是指变量的最终取值就是变量的初始值+1

        var a = 1;
			//后++,a++执行完之后变量a的值自增1
			//a++;
			document.write(a++);//1
			document.write("<hr />");
			document.write(a);//2
			document.write("<hr />");

前++
先+1再取值
无论是最终变量的值还是前++的值都是变量的初始值+1

        var a = 1;
			//前++,++a执行完之后变量a的值自增1
			//++a;
			document.write(++a);//2
			document.write("<hr />");
			document.write(a);//2

无论前++还是后++,结束后变量的值都会自增1
之所以有前++和后++是因为前++和后++这两个表达式也是有值的.

练习题:输入一个百分制分数,输出属于 优秀,良好,较差. []表示包含边界值,()表示不包含
优秀 80到100 [80,100]
良好 60到80 [60,80)
较差 0到60 [0,60)

<script>
			/*>练习题:输入一个百分制分数,
			 * 输出属于 优秀,良好,较差. 
			 * []表示包含边界值,()表示不包含
                >优秀 80到100 [80,100]
                  100 >= x >=80
                  x>=80 && x<=100
                >良好 60到80  [60,80)
                >较差 0到60   [0,60)*/
			var score = Number(prompt(
				"请输入一个百分制的分数:"));
	 		var level="";
			if (score >=80 && score <=100) {
				level = "优秀";
			} else if(score >=60){
				level = "良好";
			}else if(score>=0){
			    level = "较差";
			}
			document.write(score + "分属于" + level);
		</script>

假如分数是5个级别,改怎么实现?
[90,100] A
[80,90) B
[70,80) C
[60,70) D
[0,60) E

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值