答案:作为一种编辑语言,wmlscript提供了强大的函数、语句和库功能,以及外部编辑、访问控制等支持,同时对程序运行中可能产生的错误给出了检测手段和具体的解决办法。这些内容属于wmlscript的脚本程序设计知识和进一步的编程规定,我们本章就对此进行详细介绍。
5.1 语句
前面我们学习了变量、操作符和表达式,但仅由这些内容并不能完成某个完整的功能,因为他们不能形成完整的操作或处理程序。变量就如同与严重的单词,表达式如语言中的词组,他们都不能表达一个完整的意思;只有语句,是语言中完整的句子,能够表达完整的意思并实现某个完整的功能。wml script提供了丰富的语句功能,使用这些语句我们可以在wml的卡片中建立交互功能和其他需要的复杂功能。
在wml script中,每条语句的后面都需要以一个分号(;)结尾。为了养成严谨的编程风格,建议大家编写脚本时,语句后一定要加上分号(;),这也有助于我们形成一种良好的编程习惯。
wml script语句的书写和排列格式比较自由。我们可以在同一程序行中连续写上多个语句,也可以把同一语句分成多行排列。wml script将根据分号(;)来确定语句的具体内容。
wml script的语句主要包括两类。第一类是基本语句,如空语句、表达式语句、块语句、变量语句和return语句等;第二类是条件语句,如if语句;第三类是循环语句,如while语句、for语句、break语句和continue语句等。下面我们分别讲解这些语句的语法、功能和使用方法。
5.1.1 基本语句
wml script基本语句主要用于程序格式控制和变量声明,其中有些语句我们已经不太陌生了。
空语句
空语句用于定义一个空的程序行,它没有任何标识符和操作符,也不执行任何操作。它只是以分号(;)结束。其语法格式为:
;
显然,空语句是一种十分特殊的语句。由是我们为了让程序具有更好的可读性,通常在程序中的适当地方加上几个空语句,以起到分隔或突出的作用。例如,下面的几行程序中就含有一个空语句:
str="hello";
val=25;
;
myval=val*val+5;
alert("hi,hi!!!");
再如,while语句用于判断一个条件并在条件满足的时候执行相应的任务,但如果希望条件满足的时候什么也不作,那么就可以给它配上一个空语句,使之条件满足的执行空操作:
while(!poll(device));
这实际上是while语句和空语句组成的两条语句。其中的分号(;)在这里就代表了空语句。这两条语句的作用是在poll()函数为真()之前一直等待。
表达式语句
表达式语句用于向变量赋值,或进行数学计算,或进行函数调用。表达式语句也是我们最常用的一种语句,语法格式为:
表达式;
下面几行程序都是合法的表达式语句:
str="hey"+yourname;
val3=prevval+4
counter++;
myvalue1=counter,myvalue2=val3
alert("watch out!");
retval=16*lang.max(val3,counter);
块语句
块语句使用两个花括号({ })包含一个语句集,形成一个语句体。wml script的许多语句都需要使用块语句来实现语句体,快语句的语法格式为:
{
语句列表;
}
下面的简单程序就是使用块语句的例子:
}
vari=0;
var x=lang.abs(b);
popup("remember!");
}
变量语句
变量语句用于生命变量并可进行变量的初始化赋值。如果用户不赋值,那么wml script会自动将变量语句生命的变量赋予一个空字符串("")。基本的语法格式为:
var 变量名;
如果像一次生命多个变量,则相邻变量名之间使用逗号(,)间隔,其语法格式为:
var 变量名1,变量名2......,变量名n;
如果想在生命变量时同时初始化变量,则可按如下语法格式书写:
var 变量名=初始化
为便于大家更好的掌握变量语句,我们给出一个多出使用该语句的程序:
function count(stu){
var result=0; //声明变量的同时初始化变量
while(str!=""){
var ind=0; //每次循环都初始化一次
// 为退出循环,本块语句内应当提供修改变量str值的语句
};
return result
};
function example(param){
var a=0;
if(param>a){
var b=a+1; //声明b变量的同时使用a变量初始化b变量
}else{
var b=a+2;//声明c变量的同时使用a变量初始化c变量
};
return a; //返回a变量的值
};
注释语句
严格来讲,注释语句在wml script中还不算是真正的语句,它只是一种前指向的规定。不过它也有严格的语法和标注方法,所以我们这里还是像其他编程语言处理的一样,把wml script注释方法以语句的形式介绍一下。
注释在程序执行的时候没有任何作用,但是可以用于对程序进行解释,则增强程序的可读性。为了形成良好的编程风格,我们应该养成书写注释的良好习惯,注释有两种表达方式:
(1)通过双斜线注释一行,这样在双斜先后的字符将成为注释而不被执行。该注释行可以单独一行书写,也可以放在其他语句的后面。
例如,可以进行如下所示的注释:
//变量j用于小数每月的天数
j=0;//我们这里将j赋值为0
(2)通过符号“/*”和“*/”来规定注释语句,这种注释方式可以进行多行注释,符号“/*”和“*/”之间的内容就是注释语句。例如,可以进行如下所示的多行注释:
/*我们定义了两个变量:i和j。其中:
i用于描述每年中的月数,
而j用于描述每月的天数*/
j=0;/*我们这里将j赋值为0*/
return语句
return语句主要用在函数体中,在函数结束前,可以通过return语句,把函数处理的结果返回给调用函数的语句。它的语法格式如下:
return表达式;
下面的函数给出了应用return语句的例子:
function square(x){
if(!(lang.isfloat(x)))return invalid;
return x*x
};
5.1.2 条件语句
在条件语句中,当满足某种条件时,就会执行指定的一些代码,而在代码组另外某种条件时,则会执行另外一些代码。wml script的条件语句就是if...else语句,它的一般表达相识如下:
if(条件){
代码块1
}
else{
代码块2
}
这样,当条件满足时,就执行代码块
上一个:第五章 WMLScript脚本程序设计(下)
下一个:wml数据值性质