6.1 wml script规则
这些标准函数库提供一个扩展wml script语言的机制,这些特定的函数库必须遵循wml script的规则。
支持的数据格式
下面的wml script格式使用于程序的定义之中,这样能记录程序参数与回转值的格式。
boolean
integer
float
string
invalid
除此之外,如果整数与浮点数参数值格式都能接受的话,则能使用number来记录参数格式,如果使用的格式是所支持的格式,则能使用any来记录。
数据格式转换
函数库程序发生错误的处理方式和wml script语言一样。
invalid程序参数会产生invalid的回传值。
程序的参数无法转成所需要使用参数格式,则会产生invalid的回传值。
与程序相关的错误得出回传一个适当的错误码,至于这个值就要看每个程序如何定义。
6.2 lang函数库
名称:lang
说明:这个函数库所含的程序同wml script语言的核心有很密切的关系。
abs
程序:abs(value)
说明:回传给予数的绝对值。
如果给予的数是整数,则回传整数。
如果给予的数是浮点数,则回传浮点数。
参数:value=数字。
回传值:数字或invalid。
例外状况:var a =-3;
var b =lang.abs(a);//b=3
min
范例:var a = -3
var b = lang.abs(a);
var c = lang.min(a.b);
var d = lang.min(45、76.3);//d=45(ingteger)
var e = lang.min(45、76.3);//e=45(ingteger)
max
程序:max(value1,value2)
说明:回传值给予的两个数之间的较大值,回传的值于格式同所选数值的值与格式相同,其选取的方式如下:
wml script运算符数据格式的整数与浮点数转换法则可使用来确认数据格式,以便执行比较的动作。
参数:value1 =数字
value2 =数字
回传值:数字或invalid
例外状况:无
范例:var a =-3;
var b =lang.abs(a);//b=3
var c = lang.min(a.b);
var d = lang.min(45、76.3);//d=45(ingteger)
var e = lang.min(45、76.3);//e=45(float)
parseint
程序:parseint(value)
说明:回传由字符串value所定义的整数值,合法的整数语法由wml script数值字符串文法或是近值整数是字所界定,下列为额外的解析法则:
第一个字符不是由 、-或十进制数字当开头的话,解译结束。
结果:解析过的字符串回转换整数值。
范例:var i =lang.parseint("1234"); // i=1234
var j =lang.parseint("100 m/s"); // j=100
parsefloat
程序:parsefloat(value)
说明:回传由字符串value所定义的浮点数值,合法的浮点数语法由wml script数值字符串文法或是近值整数实字所界定,下列为额外的解析法则:
第一个字符无法解析成浮点数表达式,解析结束。
结束:解析过的字符串回转换成浮点数。
参数:value=字符串
回传值:浮点数或invalid
例外状况:解析错误则传回invalid
范例:var a =lang.parsefloat("123.7 hz"); // a=123.7
var b =lang.parsefloat("7.34e2 hz"); // b=7.34e2
var c =lang.parsefloat("70.0e-2 f"); // c=70.0e-2
var d =lang.parsefloat("-1.c"); // d=0.1
var e =lang.parsefloat("100"); // e=100.0
var f =lang.parsefloat("number:5.5"); // f=invalid
var g =lang.parsefloat("7.3e meters"); // g=invalid
var h =lang.parsefloat("7.3e- m/s"); // h=invalid
isint
程序:isint(value)
说明:如果各预的值value能使用parseint(value)转成整数则回传布尔值ture,否则传回false。
参数:value=任意值
回传值:布尔值或invalid
例外状况:无
范例:var a=lang.inint("-123"); //ture
var a =lang.minint("123.33"); //ture
var a =lang.minint("string"); //false
var a =lang.minint("#123"); //false
var a =lang.minint("invalid"); //invalid
isfloat
程序:isfloat(value)
说明:如果各预的值value能使用parseint(value)转成整数则回传布尔值ture,否则传回false。
参数:value=任意值
回传值:布尔值或invalid
例外状况:无
范例:var a=lang.inint("-123"); //ture
var a =lang.minint("123.33"); //ture
var a =lang.minint("string"); //false
var a =lang.minint("#123"); //false
var a =lang.minint("invalid"); //invalid
maxint
程序:maxint()
说明:传回最大的整数值。
参数:无
回传值:整数2147483647
例外状况:无
范例:var a =lang.minint();
minint
程序:minint()
说明:传回最小的整数值
参数:无
回传值:整数-2147483647
例外状况:无
范例:var a =lang.minint();
float
程序:float()
说明:如果有支持浮点数的话传回ture,没有的话传回false。
参数:无
回传值:布尔值
例外状况:无
范例:var floatssupported = lang.float();
exit
程序:exit(value)
说明:结束wml script位码的解译然后回到调使用wml script解译器者的控制,并回传指定值value,你可以使用这个程序来执行由一般程序的结束,并且wml script位码的执行必须停止。
参数:valre=任意值
回传值:无,这个程序结束解译
例外状况:无
范例:lang.exit("value:" myval);//returns a string
lang,exit(invalid);// returns invalid
abort
程序:abort(errordescription)
说明:中止wml script位码的解译然后回到调使用wml script解译器者的控制,并回传errordescription,你能使用这个程序执行不正常的中止,调使用程序者检测到有严峻错误,wml script的执行并须中断。
如果errordescription的格式为invalid,字符串invalid使用代替errordescription的使用。
参数:errordescription =字符串
回传值:无,这个程序结束解译
例外状况:无
范例:lang.abort("error:" errval); // error value string
radndom
程序:random(value)
说明:回传一个正数的整数值,也就是说要大于或等于零,但必须要小于给定值value,回传值是由近是正常分布所随机选取的值。
[1] [2] [3] [4] 下一页
回传值:整数或invalid
例外状况:如果value等于0,则程序回传0
如果value小于0,则程序回传invalid
范例:var a =10;
var b =lang.random(5.1)*a;//b=0..50
var c = lang.random("string"); // c=invalid
reed
程序:seed(alue)
说明:初始化需随机数字顺序并回传一个空字符串
如果value为0或正整数,给予的value则使用来初始化,反之则使用随机初始化的值。
如果value为浮点数,则会先使用float.int()来计算确切的整数值。
参数:value=整数
回传值:字符串或invalid]
例外状况:无
范例:var a =lang.reed(123);// a=""
var b =lang.random(20); // b=0..20
var c = lang.seed("seed"); // c=invalid (random seed //left unchanged)
characterset
程序:characterset()
说明:回传wml script解译器所支持的字集,回传只是个整数使用来记录由iana所设定的mib enum值,这个只能表示所有的字集。
参数:无
回传值:整数
例外状况:无
范例:var charset = lang.characterset(); //charset = 4 for latinl
6.3 float函数库
名称:float
说明:这个函数库包含了典型与常使用的浮点数算术程序。
int
程序:int(value)
说明:回传给予值的整数部分。
参数:value=数字
回传值:整数或invalid
例外状况:无 范例:var a =3.14;
var b =float.in(a); //b=3
var c =float.in(-2.8); //c=-2
floor
程序:floor(value)
说明:回传整数值,这个只要最接近给予值但无法大于它。
如果value已经是个整数,其结果就是这个值本身。
参数:value=数字
回传值:整数或invalid
例外状况:无
范例:var a =3.14;
var b =float.in(a); //b=3
var c =float.in(-2.8); //c=-3
ceil
程序:ceil(value)
说明:回传一个只要最接近给予值但无法小于它的整数值。
如果value已经是个整数,其结果就是这个值本身。
参数:value=数字
回传值:整数或invalid
例外状况:无
范例:var a =3.14;
var b =float.in(a); //b=4
var c =float.in(-2.8); //c=-2
pow
程序:pow(x,y)
说明:回传x的y次方值。
如果x是负数,则y必须为正数。
参数:x=数字
y=数字
回传值:浮点数或invlid
例外状况:如果x= =0并且y<0,则回传invalid
如果x<0并且y不是个整数,则回传invalid
范例:var a =3
var b =float.pow(a,2); //b=9
round
程序:round(value)
说明:传回最接近给予值的整数
若两个整数值跟value接近的程序相等,则选择比较大的数。
若value已经是个正数,其结果就是value本身。
参数:value=数字
回传值:整数或invalid
例外状况:无
范例:var a=float.round(3.5);// a=4
var b=float.round(-3.5); //b=-3
var c=float.round(0.5);// c=1
var d=float.round(-0.5); //d=0
squt
程序:sqrt(value)
说明:传回给予值value的平方根近似值。
参数:value=浮点数
回传值:浮点数或invalid
例外状况:如果value负数,则回传invlid
范例:var a=4;
var b=float.squt(a); //b=2.0
var c=float.squt(5); //c=2.2360679775
maxfloat
程序:maxfloat()
说明:传回ieee 754所支持的但准浮点数格式中最大的浮点数值。
参数:无
回传值:浮点数3.40282347e 38
例外状况:无
范例:var a=float.maxfloat();
minfloat
程序:minfloat()
说明:传回ieee 754所支持的但准浮点数格式中最小的浮点数值。
参数:无
回传值:浮点数1.17549435e-38
例外状况:无
范例:var a=float.minfloat();
6.4 string函数库
名称:字符串
说明:这个函数库包含了字符串程序的集合,一个字符串可以是字符数组,每个字符都有个索引,字符串的第一个字浮的索引为0,字符串的长度是字符在数组中的数目。
你能使用几种特殊的分隔符号来界定不同的字符串,这样你就能存取这些有分隔符号予元素索引所界定出的元素,字符串中第一个元素的索引值为0,每个字符串分隔符号回分隔出两个元素,但字符是无法使用来做分隔符号。
一个空格的字符可能是下列字符其中之一:
tab:水平跳格定位(horizontal tabulation)
vt:垂直跳格定位(ertival tabulation)
ff:跳页(from feed)
sp:空格(space)
lf:跳行(line feed)
cr:归位(carriage return)
length
程序:length(string)
说明:传回给予字符串的长度(字符的数目)。
参数:string=字符串
回传值:整数或invalid
例外状况:无
评论总数:
条[ 查看全部 ] 网友评论
推荐文章
论坛推荐帖子

RSS订阅