(6)javascript的程序控制結構及語句-----(1)條件判斷
程序控制結構及語句
編程就是將現實應用,轉換為程序能夠讀得懂的語法語句。Javascript編程中對程序流程控制主要是通過條件判斷語句、循環控制語句及continue、break來完成的,其中條件判斷按預先設定的條件執行順序,它包括if語句和switch語句;而循環控制語句則可以重復完成任務,它包括while語句、do...while語句及for語句。
一、條件判斷語句:
條件判斷語句就是對語句中不同條件的值進行判斷,進而根據不同條件執行不同的語句。條件判斷語句有“if條件語句”和“switch多分支語句”。
(1)、if條件語句
是條件選擇語句,語法格式:
if (條件語句表達式)
{
只有當條件語句表達式為 true 時執行的代碼
}
例子1:
var y;
y=80;
if(y>120) //表達式為false
alert("執行語句1信息");//if結構只能控制它下面一條語句
alert("執行語句2"); //因y>120表達式為false,故執行此語句
註意:只彈出 ”語句2“ ,而 ”此只執行語句1信息“ 不會彈出
例子2:
var y;
y=80;
if(y>120){ //if控制{}所有語句
alert("語句1");
alert("語句2");
}
註意:兩條都不執行,因為y>120為false
註意:所有結構都是如此,默認只能控制結構下方一條語句,想控制多條必須加在大括號{}中
案例:
<!doctype html>
<head>
<meta http-equiv="content-type" content="text/html;charset=utf-8"/>
<meta name="keywords" content="javascript的程序控制結構與語句,javascript入門">
<meta name="description" content="老羅江湖">
<title> if語句的使用 </title>
</head>
<body>
<p>如果時間早於21:00,會獲得問候“very Good”。</p>
<button onclick="myFunction()">單擊這裏</button>
<p id="demo"></p>
<script type="text/javascript">
function myFunction()
{
var x="";
var time=new Date().getHours(); //獲取系統日期、獲取此時此刻“時針數”
if (time<22) //22代表“時間”填寫時,註意根據時間而定。
{
x="very Good";
}
document.getElementById("demo").innerHTML=x;
}
</script>
<p>請註意,上面在if語句中,沒有 ..else..。您已經告訴瀏覽器只有在指定條件為 true 時才執行代碼。</p>
</body>
</html>
效果圖:
請使用小寫的 if,使用大寫字母(IF)會生成 JavaScript 錯誤!請註意,上面在if語句中,沒有 ..else..。您已經告訴瀏覽器只有在指定條件為 true 時才執行代碼。
2、if...else 語句 :
用於需要用兩個程序分支來執行的情況。 If...else語法:
If(條件表達式)
{
當 條件表達式 成立 “為true”時執行這語句段
}
else{
當 條件表達式 不成立“為false”時執行這語句段
}
//當條件為 true 時執行if後面的從句,當條件為 false 時執行else後面部分的從句。
案例:
<script type="text/javascript">
var y = "Beautiful Girl";
if( y != "Beautiful Girl")
{
document.write(‘<h3 style="text-algin:center;color:pink;">歡迎素顏美女光臨</h3>‘);
}
else{
document.write(‘<p style="font-size:30px;color:red;">先天問題請化妝再來</p>‘);
}</script>
效果圖:對變量y的值進行判斷,如果y值不等於Beautiful Girl,則輸出粉紅色字符;否則輸出紅色字符。
3、If...else if...else語句
使用 if....else if...else語句來選擇多個代碼塊之一來執行。語法格式:
if(條件1)
{
當條件1為true是執行的代碼
}
else if(條件2)
{
當條件2為true時執行的代碼
}
else{
當條件1和條件2都不為true是執行的代碼
}
案例:
<title> if...else if...else語句的使用 </title>
</head>
<body>
<p>如果時間早於21:00,會獲得問候“very Good”。</p>
<button onclick="myFunction()">單擊這裏</button>
<p id="demo"></p>
<script type="text/javascript">
function myFunction()
{
var d = new Date(); //獲取系統日期
var time=d.getHours(); //獲取此時此刻“時針數”
if (time<10)
{
document.write(‘Good morning‘);
}
else if (time<18)
{
document.write(‘Good afternoon‘);
}
else
{
document.write(‘Good evening‘);
}
}
</script>
</body>
效果圖:如果時間小於 10:00,則將發送問候 "Good morning",否則如果時間小於 18:00,則發送問候 "Good afternoon",否則發送問候 "Good evening",因此時是晚上九點鐘,所以輸出的結構為下圖:
4、if語句的嵌套
If語句可以嵌套使用。當使用if語句的嵌套應用時,最好使用“{ }”來確定相互的層次關系,由於大括號“{ }”使用的位置不同,可能導致程序代碼的含義完全不同,從而輸出不同的結果。
案例:
<title> if語句的嵌套 </title>
</head>
<body>
<script type="text/javascript">
var x=20;y=x; //x、y值都為20
if(x<1) //x為20,不滿足此條件,故其下面的代碼不會執行
{
if(y==5)
alert("x<1&&y==5");
else
alert("x<1&&y!==5");
}
else if(x>15) //x滿足條件,繼續執行下面的語句
{
if(y==5) //y為20,不滿足此條件,故其下面的代碼不會執行(已滿足的不會被執行)
alert("x>15&&y==5");
else //y滿足條件,繼續執行下面的語句
alert("x>15&&y!==5") //這裏是程序輸出的結果
}
</script>
</body>
效果圖:
5、switch語句
switch選擇語句用於將一個表達式的結果同多個值進行比較,並根據比較結果選擇執行語句。語法:
Switch(表達式)
{
aase取值1:
語句塊1;break
case取值2:
語句塊2;break;
...
case取值n:
語句塊n;break;
Default:
語句塊n+1;
}
switch必須賦初始值,值與每個case值匹配。滿足執行該case後的所有語句,並用break語句來阻止運行下一個case。如所有case值都不匹配,執行default後的語句。記得在case所執行的語句後添加上一個break語句,否則就直接繼續執行下面的case中的語句。
案例:
<script type="text/javascript">
var now=new Date();
var day=now.getDay(); //獲取系統當前日期
var week;
switch (day){
case 1:
week="Monday";
break;
case 2:
week="Tuesday";
break;
case 3:
week="Wednesday";
break;
case 4:
week="Thursday";
break;
case 5:
week="Friday";
break;
case 6:
week="Saturday";
break;
default:
week="Sunday";
break;
}
document.write("今天是"+week); //輸出今天是星期幾
</script>
效果圖:
總結:
結合上面介紹的內容:If語句是常用語句,switch語句是效率高語句,對於判斷條件較小的可以使用if語句,但是在現實一些條件判斷中,就應該使用switch語句。
以上的內容部分來自“javascript從零開始學”和個人學習筆記,轉載請註明出處!謝謝合作!
(6)javascript的程序控制結構及語句-----(1)條件判斷