JavaScript语句

JavaScript语句类型:

JavaScript脚本中的语句一般是按照写的顺序来运行的。这种运行称为顺序运行,是程序流的默认方向。与顺序运行不同,另一种运行将程序流转换到脚本的另外的部分。也就是,不按顺序运行下一条语句,而是运行另外的语句。要使脚本可用,该控制的转换必须以逻辑方式执行。程序控制的转换是基于一个“决定”,这个“决定”结果是真或假(返回  Boolean 型 true false)。 创建一个表达式,然后测试其是否为真。主要有两种程序结构实现本功能。

第一种是选择结构。用来指明两种程序流方向,在程序中创建一个交叉点(像岔路)。在JavaScript中有四种选择结构可用。

  • 单一选择结构(if
  • 二路选择结构(if/else
  • 内联三元运算符 ?:
  • 多路选择结构(switch

第二种类型的程序控制结构是循环结构。使用循环结构来指明当某些条件保持为真时要重复的动作。当控制语句的条件得到满足时(通常在某些迭代的特定数字后),控制跳过循环结构传递到下条语句。在 Jscript 中有四种循环结构可用。

  • 在循环的开头测试表达式(while
  • 在循环的末尾测试表达式(do/while
  • 对对象的每个属性都进行操作(for/in
  • 由计数器控制的循环(for)。

通过嵌套和堆栈选择、循环控制结构,可以创建相当复杂的脚本。

第三种形式的结构程序流由意外处理给出,在此不作讨论。

1.条件语句

在编写代码时,经常需要根据不同的条件完成不同的行为。可以在代码中使用条件语句来完成这个任务。

在 JavaScript 中,我们可以使用下面几种条件语句:

if 语句

在一个指定的条件成立时执行代码。

if...else 语句

在指定的条件成立时执行代码,当条件不成立时执行另外的代码。

if...else if....else 语句

使用这个语句可以选择执行若干块代码中的一个。

switch 语句

使用这个语句可以选择执行若干块代码中的一个。

If 语句

如果希望指定的条件成立时执行代码,就可以使用这个语句。

语法:

if (条件)
{
  条件成立时执行代码
} 

注意:请使用小写字母。使用大写的 IF 会出错!

实例 1
<script type="text/javascript">
  //Write a "Good morning" greeting if
  //the time is less than 10
  var d=new Date()
  var time=d.getHours()

if (time<10) 
  {
    document.write("<b>Good morning</b>")
  }
</script>

实例 2
<script type="text/javascript">
  //Write "Lunch-time!" if the time is 11

  var d=new Date()
  var time=d.getHours()

if (time==11) 
  {
   document.write("<b>Lunch-time!</b>")
  }
</script>

注意:请使用双等号 (==) 来比较变量!

注意:在语法中没有 else。仅仅当条件为 true 时,代码才会执行。

If...else 语句

如果希望条件成立时执行一段代码,而条件不成立时执行另一段代码,那么可以使用 if....else 语句。

语法:

if (条件)
{
  条件成立时执行此代码
}
else
{
  条件不成立时执行此代码
}
实例
<script type="text/javascript">
  //If the time is less than 10,
  //you will get a "Good morning" greeting.
  //Otherwise you will get a "Good day" greeting.

  var d = new Date()
  var time = d.getHours()
 
if (time < 10) 
  {
   document.write("Good morning!")
  }
 else
  {
   document.write("Good day!")
  }
</script>

If...else if...else 语句

当需要选择多套代码中的一套来运行时,请使用 if....else if...else 语句。

语法:

if (条件1)
{
  条件1成立时执行代码
}
else if (条件2)
{
  条件2成立时执行代码
}
else
{
  条件1和条件2均不成立时执行代码
}
实例:
<script type="text/javascript">
  var d = new Date()
  var time = d.getHours()

if (time<10)
  {
   document.write("<b>Good morning</b>")
  }
 else if (time>10 && time<16)
  {
   document.write("<b>Good day</b>")
  }
 else
  {
   document.write("<b>Hello World!</b>")
  }
</script>

Switch 语句

如果希望选择执行若干代码块中的一个,你可以使用 switch 语句:

语法:

switch(n)
   {
   case 1:
     执行代码块 1
     break
   case 2:
     执行代码块 2
     break
   default:
     如果n即不是1也不是2,则执行此代码
   }

工作原理:switch 后面的 (n) 可以是表达式,也可以(并通常)是变量。然后表达式中的值会与 case 中的数字作比较,如果与某个 case 相匹配,那么其后的代码就会被执行。break 的作用是防止代码自动执行到下一行。

实例:

<script type="text/javascript">
//You will receive a different greeting based
//on what day it is. Note that Sunday=0,
//Monday=1, Tuesday=2, etc.

var d=new Date()
theDay=d.getDay()

switch (theDay)
   {
   case 5:
     document.write("Finally Friday")
     break
   case 6:
     document.write("Super Saturday")
     break
   case 0:
     document.write("Sleepy Sunday")
     break
   default:
     document.write("I'm looking forward to this weekend!")
}
</script>


2.循环语句

在编写代码时,常常希望反复执行同一段代码。我们可以使用循环来完成这个功能,这样就用不着重复地写若干行相同的代码。

JavaScript 有两种不同种类的循环:

for

将一段代码循环执行指定的次数

while

当指定的条件为 true 时循环执行代码

for 循环

在脚本的运行次数已确定的情况下使用 for 循环。

语法:

for (变量=开始值;变量<=结束值;变量=变量+步进值) 
{
    需执行的代码
}

实例:

解释:下面的例子定义了一个循环程序,这个程序中 i 的起始值为 0。每执行一次循环,i 的值就会累加一次 1,循环会一直运行下去,直到 i 等于 10 为止。

注释:步进值可以为负。如果步进值为负,需要调整 for 声明中的比较运算符。

<html>
<body>

<script type="text/javascript">
var i=0
for (i=0;i<=10;i++) { document.write("The number is " + i) document.write("<br/>") }
</script>

</body>
</html>

结果:

The number is 0
The number is 1
The number is 2
The number is 3
The number is 4
The number is 5
The number is 6
The number is 7
The number is 8
The number is 9
The number is 10

while 循环

while 循环用于在指定条件为 true 时循环执行代码。

语法:

while (变量<=结束值)
{
    需执行的代码
}

注意:除了<=,还可以使用其他的比较运算符。

实例:

解释:下面的例子定义了一个循环程序,这个循环程序的参数 i 的起始值为 0。该程序会反复运行,直到 i 大于 10 为止。i 的步进值为 1。

<html>
<body>
<script type="text/javascript">
var i=0
while (i<=10) { document.write("The number is " + i) document.write("<br/>") i=i+1 }
</script>
</body>
</html>

结果:

The number is 0
The number is 1
The number is 2
The number is 3
The number is 4
The number is 5
The number is 6
The number is 7
The number is 8
The number is 9
The number is 10
do...while 循环

do...while 循环是 while 循环的变种。该循环程序在初次运行时会首先执行一遍其中的代码,然后当指定的条件为 true 时,它会继续这个循环。所以可以这么说,do...while 循环为执行至少一遍其中的代码,即使条件为 false,因为其中的代码执行后才会进行条件验证。

语法:

do
{
    需执行的代码
}
while (变量<=结束值)

实例:

<html>
<body>
<script type="text/javascript">
var i=0
do { document.write("The number is " + i) document.write("<br/>") i=i+1 } while (i<0)
</script>
</body>
</html>

结果:

The number is 0

©版权所有: 淮安深度人工智能科技有限公司2020, 备案号:苏ICP备2020056902号-2 | 技术支持:淮阴工学院计算机与软件工程学院《Web开发技术》教学团队