分享
 
 
 

WML Script标准函数库

王朝other·作者佚名  2006-11-24
窄屏简体版  字體: |||超大  

这节会讨论标准的WML Script函数库。

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,回传值是由近是正常分布所随机选取的值。

参数:value=整数

回传值:整数或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所支持的但准浮点数格式中最大的浮点数值。

[1] [2] [3] 下一页

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有