JavaScript - if语句、for循环、getElementById、print()
1.if
60分及格,你及格吗?
假设你的分数存在变量i里,你90分,怎么让JavaScript判断你及格了没有呢?
标题都露馅了:if
var i=90; //你90分
if(i<60) //如果低于60分
document.write("你不及格"); //写出“你不及格”
if(i>=60) //如果高于或等于60分
document.write("你及格了"); //写出“你及格了”
恭喜你,你及格了(😃)
2.for循环
for循环是一个循环结构,也就是多次重复地执行一个代码。
你可以给它“贴”一个标签。我就起一个叫"loop"吧:
var i;
loop:for(i=0;i<10;i++) { //for循环,标签是loop
document.write("<h1>"+i+"</h1>"); //一些代码。
}
效果:
这个没有体现出标签的作用。只是从0数到了9。
开始时,i=0,然后输出i(0)。
然后,i++(就是自己增加1,赋值给自己),输出i(1)。
然后,i++,输出i(2)。
……
最后,i++,i=10,大于9了,跳出循环,继续执行(没有了)。
不说废话了,再来谈谈标签。
var i,j,k;
for(i=0;i<10;i++) {
loop:for(j=0;j<50;j++) { //
document.write(j);
for(k=0;k<30;k++) {
if(j>10)
break loop;
}
}
document.write("<p>Looped</p>");
}
忘了说了:break是指终止某个循环。后面填标签。
运行结果:
输出0~11,重复了10次。
不是输出0~49吗?
当j=11时,没有停止,输出了j。
进入k的循环。
发现j>10了。
终止了loop循环。
第一个循环继续运行,输出“Looped”。
再说说continue
continue的意思是终止本次循环,开始下次循环。
举个栗子:
var i;
loop:for(i=0;i<5;i++) {
if(i==3)
continue loop;
document.write(i);
}
可以看到,结果没有输出3:
应为输出3的一次循环用continue跳过了。
还有getElementById呢
咱们先来完善小明的成绩单吧
HTML+CSS:
<html>
<head>
<style>
a#print {
color:rgb(152,251,152);
font-size:30px;
}
h1 {
color:black;
size:50px;
margin-left:30px;
border-bottom:3px solid #00BFFF;
margin-right:75%;
}
body {
background-color:#F5F5F5
}
p {
margin-left:30px;
font-size:20px;
}
</style>
</head>
<body>
<h1>小明的成绩单</h1>
<p>0分</p>
<p><a id="print">打印</a></p>
<script>
var a=document.getElementById("print");
</script>
好了,现在JS已经得到a元素了。现在要等待用户点击“打印”。
a.onclick=function() {
window.print();
}
window是一个对象,print()是里面的方法。
onclick是一个事件,鼠标点击a元素的时候触发此事件。
上图:
讲完了,还是有点短 是吧?
😃