HTML基础知识js篇3
-----if、for、while
在字符串中使用转义字符输入Unicode编码 \u四位编码
console.log("\u2620");
</script>
</head>
<body>
<!--在网页中使用Unicode编码
&#编码; 这里的编码需要的是10进制
-->
<h1 style="font-size: 200px;">☠</h1>
<h1 style="font-size: 200px;">⚀</h1>
</body>
**
编写程序,由键盘输入三个整数分别存入变量num1、num2、num3,
对他们进行排序,并且从小到大输出。
**
var num1=+prompt("请输入第一个数字:");//加了一个正号console.log(typeof num1); number
var num2=+prompt("请输入第二个数:");
var num3=+prompt("请输入第三个数:");
console.log(typeof num1);//string var num1=prompt("请输入第一个数字:");
//判断 六个情况
//num1 num2 num3
//num1 mun3 num2
if(num1<num2&&num1<num3){
if(num2<num3){
alert(num1+"<"+num2+"<"+num3);//123
}else{
alert(num1+"<"+num3+"<"+num2);//132
}
//num2 num1 num3 || num2 num3 num1
}else if(num2<num3&&num2<num1){//num2最小
if(num1<num3){
alert(num2+"<"+num1+"<"+num3);//213
}else{
alert(num2+"<"+num3+"<"+num1);//231
}
}else if(num3<num1&&num3<num2){
if(num1<num2){
alert(num3+"<"+num1+"<"+num2);//312
}else{
alert(num3+"<"+num2+"<"+num1);//321
}
}
var temp;
if(num1<num2){
temp=num1;
num1=num2;
num2=temp;
}
if(num2<num3){
temp=num2;
num2=num3;
num3=temp;
}
if(num1<num3){
temp=num1;
num1=num3;
num3=temp;
}
if(num1<=num2&&num1<=num3){
if(num2<=num3){
alert("从小到大的顺序为:"+num1+","+num2+","+num3);//123
}else{
alert(num1+"<"+num3+"<"+num2);//132
}
条件运算符也叫三元运算
-
语法:
* 条件表达式?语句1:语句2;
* - 执行的流程:
* 条件运算符在执行时,首先对条件表达式进行求值,
* 如果该值为true,则执行语句1,并返回执行结果
* 如果该值为false,则执行语句2,并返回执行结果
* 如果条件的表达式的求值结果是一个非布尔值,
* 会将其转换为布尔值然后在运算**var num = 20; //如果num为10,则输出哈哈哈哈哈哈 if(num == 20){ alert("哈哈哈哈哈哈"); }else{ alert("我们不一样~") } if (){ }else if(){ }else if(){ }else if(){ }else{ }
if语句
* 语法二:
* if(条件表达式){
* 语句…
* }else{
* 语句…
* }
*
* if…else…语句
* 当该语句执行时,会先对if后的条件表达式进行求值判断,
* 如果该值为true,则执行if后的语句
* 如果该值为false,则执行else后的语句
*
* 语法三:
* if(条件表达式){
* 语句…
* }else if(条件表达式){
* 语句…
* }else if(条件表达式){
* 语句…
* }else{
* 语句…
* }
*
* if…else if…else
* 当该语句执行时,会从上到下依次对条件表达式进行求值判断
* 如果值为true,则执行当前语句。
* 如果值为false,则继续向下判断。
* 如果所有的条件都不满足,则执行最后一个else后的语句
* 该语句中,只会有一个代码块被执行,一旦代码块执行了,则直接结束语句**
从键盘输入小明的期末成绩:
* 当成绩为100时,‘奖励一辆BMW’
* 当成绩为[80-99]时,‘奖励一台huawei’
* 当成绩为[60-80]时,‘奖励一本参考书’
* 其他时,什么奖励也没有
-
prompt()可以弹出一个提示框,该提示框中会带有一个文本框,
用户可以在文本框中输入一段内容,该函数需要一个字符串作为参数,
该字符串将会作为提示框的提示文字
用户输入的内容将会作为函数的返回值返回,可以定义一个变量来接收该内容//score就是小明的期末成绩 var score=prompt("请输入小明的期末成绩:"); //成绩的范围【0-100】 if(score>=0&&score<=100){ //成绩在合理的范围内 if(score==100){ alert("奖励一辆BMW"); }else if(score>=80&&score<=99){ alert("奖励一台huawei"); }else if(score>=60&&score<=80){ alert('奖励一台huawei'); }else{ alert("青蛇棒子肉一顿"); } }else{ //成绩不合理不在合理范围【1-100】之间 alert("你输入的成绩不在【1-100】之间"); }
-
从键盘输入小明的期末成绩:
-
当成绩为100时,‘奖励一辆BMW’
-
当成绩为[80-99]时,‘奖励一台huawei’
-
当成绩为[60-80]时,‘奖励一本参考书’
-
其他时,什么奖励也没有
var score = prompt("请输入小明的期末成绩(0-100):") //判断值是否合法 if(score > 100 || score < 0 || isNaN(score)){ alert("拉出去毙了~~~"); }else{ //根据score的值来决定给小明什么奖励 if(score == 100){ //奖励一台宝马 alert("宝马,拿去~~~"); }else if(score >= 80){ //奖励一个手机 alert("手机,拿去玩~~~"); }else if(score >= 60){ //奖励一本参考书 alert("参考书,拿去看~~~"); }else{ alert("棍子一根~~"); } }
-
大家都知道,男大当婚,女大当嫁。那么女方家长要嫁女儿,当然要提出一定的条件:
-
高:180cm以上; 富:1000万以上; 帅:50000以上;
-
如果这三个条件同时满足,则:‘我一定要嫁给他’
-
如果三个条件有为真的情况,则:‘嫁吧,比上不足,比下有余。’
-
如果三个条件都不满足,则:‘不嫁!’
var height = prompt("请输入你的身高(CM):"); var money = prompt("请输入你的财富(万):"); var face = prompt("请输入你的颜值(PX):"); //如果这三个条件同时满足,则:'我一定要嫁给他' if(height > 180 && money > 1000 && face > 500){ alert("我一定要嫁给他~~"); }else if(height > 180 || money > 1000 || face > 500){ //如果三个条件有为真的情况,则:'嫁吧,比上不足,比下有余。' alert("嫁吧,比上不足,比下有余。"); }else{ //如果三个条件都不满足,则:'不嫁!' document.write("lala"); alert("不嫁。"); } var age = 50; /*if(age >= 60){ alert("你已经退休了~~"); }else{ alert("你还没退休~~~"); }*/ age = 200; /*if(age > 100){ alert("活着挺没意思的~~"); }else if(age > 80){ alert("你也老大不小的了~~"); }else if(age > 60){ alert("你也退休了~~"); }else if(age > 30){ alert("你已经中年了~~"); }else if(age > 17){ alert("你已经成年了"); }else{ alert("你还是个小孩子~~"); }*/ age = 90; if(age > 17 && age <= 30){ alert("你已经成年了"); }else if(age > 30 && age <= 60){ alert("你已经中年了"); }else if(age > 60 && age <= 80){ alert("你已经退休了"); }else{ alert("你岁数挺大的了~~"); }
-
for语句,也是一个循环语句,也称为for循环
* 在for循环中,为我们提供了专门的位置用来放三个表达式:
* 1.初始化表达式
* 2.条件表达式
* 3.更新表达式
*
* for循环的语法:
* for(①初始化表达式;②条件表达式;④更新表达式){
* ③语句…
* }
*
* for循环的执行流程:
* ①执行初始化表达式,初始化变量(初始化表达式只会执行一次)
* ②执行条件表达式,判断是否执行循环。
* 如果为true,则执行循环③
* 如果为false,终止循环
* ④执行更新表达式,更新表达式执行完毕继续重复②
*//创建一个执行10次的while循环 //初始化表达式 /*var i = 0; //创建一个循环,定义条件表达式 while(i < 10){ //设置更新表达式 alert(i++); }*/ for(var i = 0 ; i < 10 ; i++ ){ alert(i); } /* * for循环中的三个部分都可以省略,也可以写在外部 * 如果在for循环中不写任何的表达式,只写两个; * 此时循环是一个死循环会一直执行下去,慎用 * for(;;){ alert("hello"); } */
1.打印1-100之间所有奇数之和
var n=1; var sum=0; for(n=1;n<=100;n+=2){ if(n%2==1){ sum+=n; } } console.log(sum)
2.打印1-100之间所有7的倍数的整数的个数及总和
* 打印1-100之间所有7的倍数的个数及总和
*/
var count=0;//个数
var sum=0;//和
for(i=1;i<=100;i++){
if(i%7==0){
sum+=i;
count++;
console.log(i);//7的倍数
}
}
console.log(sum);
console.log(count);
3.水仙花数 153=
水仙花数是指一个3位数,它的每个位上的数字的3 次幂之和等于它本身。
(例如:1^3 + 5^3+ 3^3 = 153),请打印所有的水仙花数。
<script type="text/javascript">
/*
* 水仙花数是指一个3位数,它的每个位上的数字的3 次幂之和等于它本身。
(例如:1^3 + 5^3 + 3^3 = 153),请打印所有的水仙花数。
*/
//打印所有的三位数
for(var i=100 ; i<1000 ; i++){
//获取i的百位 十位 个位的数字
//获取百位数字
var bai = parseInt(i/100);
//获取十位的数字
var shi = parseInt((i-bai*100)/10);
//获取个位数字
var ge = i % 10;
//判断i是否是水仙花数
if(bai*bai*bai + shi*shi*shi + ge*ge*ge == i){
console.log(i);
}
}
-
水仙花数是指一个3位数,它的每个位上的数字的3 次幂之和等于它本身。
(例如:1^3 + 5^3 + 3^3 = 153),请打印所有的水仙花数。for(i=100;i<1000;i++){ var gw=i%10;//个位 var sw=parseInt(i/10%10);//十位 153 15 var bw=parseInt(i/100);//百位 //它的每个位上的数字的3 次幂之和等于它本身 pow(^_^,N) math.pow(2,3) math.sqrt() if(gw*gw*gw+sw*sw*sw+bw*bw*bw==i){//算关逻条赋逗 console.log(i);//满足水仙花数的数字 }
while
* 假如投资的年利率为5%,试求从1000块增长到5000块,需要花费多少年
* 1000 10001.05
* 1050 10501.05
*
var tz=1000;
var count=0;
while(tz<5000){
//计算投资每年的金额
tz=tz*1.05;
count++;//计数器:累计年数的增长
}
console.log(count);
</script>
在页面中接收一个用户输入的数字,并判断该数是否是质数。1-100
质数:只能被1和它自身整除的数,1不是质数也不是合数,质数必须是大于1的自然数。**
//立一个flag :true false
var flag=true;
for(i=1;i<=100;i++){//i=7 2 3 4 7
flag=true;//还原flag的值
for(j=2;j<i;j++){//j=6 j=i-1 j<i 2 3 4 5 6
if(i%j==0){
flag=false;
}
}
//外层循环执行一次,内层循环执行完毕(一圈)
if(flag){//flag=true
console.log(i+"是质数");
}else{
console.log(i+"不是素质");
}
}
/*
**
通过程序,在页面中输出如下的图形:
* 1 <1 i=0
** 2 <2 i=1
*** 3 <3 i=2
**** 4 <4 i=3
***** 5 <5 i=4
*****
*****
*****
*****
*****
***** 1 j<5(5-0) i=0
**** 2 j<4(5-1) i=1
*** 3 j<3(5-2) i=2
** 4 j<2(5-3) i=3
* 5 j<1(5-4) i=4
var i,j;
for(i=1;i<=5;i++){//外行 i=3
for(j=1;j<=i;j++){//列 j=1(i<i) j=2(2<i) j=3(3<=i) j=4
document.write("*");
document.write(" ");
//等价于document.write("* ");
}
//内层循环结束换行
document.write("<br>");
}
//倒三角 i=1 j=5 4 3 2 1
// i=2 j=4
//3 i=3 j=3
for(i=1;i<=5;i++){//i=1 i=2
for(j=5;j>=i;j--){//j=5 4 3 2 1 j=5 4 3 2
document.write("*");
document.write(" ");
}
//内层循环结束换行
document.write("<br>");
}
//矩形
for(i=1;i<=5;i++){//
for(j=1;j<=5;j++){//
document.write("*");
document.write(" ");
}
//内层循环结束换行
document.write("<br>");
}
//九九乘法表
//11=1 ji=ij
//12=2 22=4
//13=3 23=6 33=9
for(i=1;i<=9;i++){
for(j=1;j<=i;j++){
document.write(j+"*"+i+"="+i*j+' ');
}
//内层换行
document.write("<br>");
}
放在盒子里加按钮实现乘法口诀:
function g(){
var b= document.getElementById('text')
for(i=1;i<=9;i++){
for(j=1;j<=i;j++){
//document.write(j+"*"+i+"="+i*j+' ');
b.value=b.value+j+'*'+i+'='+i*j+'\b';
}
// document.write("<br>");
b.value=b.value+'\r';
}
}
</script>
</head>
<body>
<div id="">
<input type="button" value="9*9乘法口诀" onclick="g()"/>
<textarea cols="70" rows="20" id="text"></textarea>
</div>
</body>