| 域名空间 下载中心 社区论坛 信息公告 MY小屋 |
![]() |
联系我们 设为首页 加入收藏 |
|
首页 | 新闻资讯 | 编程开发 | 网页设计 | 图形图象 | 网络媒体 | 网站模板 | 数 据 库 | 投稿 论坛 | 操作系统 | 系统优化 | 网络安全 | 黑客技术 | 硬件学堂 | 硬件报价 | 服 务 器 | 地图 专题 | 应用软件 | 聊天通讯 | Q Q 专栏 | 建站经验 | 在线工具 | 站长Club | 注 册 表 | 旧版 社会 | 游戏娱乐 | 设计欣赏 | 疑难解答 | 社区论坛 | 韩国素材 | 素材图库 | 广告服务 | 服务 |
| 新版上线![旧版] | |||||
注:打开慢时请稍等
WML Script标准函数库http://www.iyit.net 日期:2006-5-24 12:07:24 来源:整理转载 点击: |
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所支持的但准浮点数格式中最大的浮点数值。 参数:无 回传值:浮点数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 例外状况:无 范例:var a="ABC"; var b=string.length(a); //b=3 var c=string.length(""); //c=0 var d=string.length(342); //d=3 is Empty 程序:is Empty(string) 说明:如果字符串长度为零则传回布尔值true,反之传回false。 参数:string=字符串 回传值:布尔值或invalid 例外状况:无 范例:var a="Hello; var b=""; var c=sting.isEmpty(a); //c=false var c=sting.isEmpty(b); //d=ture var c=sting.isEmpty(ture); //e=false charAt 程序:charAt(sting.index) 说明:回传string中index值所指定的字符。 参数:string=字符数 index=数字(回传回index所指定的字符) 回传值:字符串或invalid 例外状况:如果index的值超过字符串的范围,则回传空字符串("") 范例:var a="My name is Joe" var b=sting.charAt(a,0); //b= "M" var c=sting.charAt(a,100); //c= "" var d=sting.charAt(34.0); //d="3" var e=sting.charAt(a,"first"); //e=invalid subString 程序:subString(string,startIndex,length) 说明:传回一个新的字符串来代替所给予的字符串, 这个新字符串给定的索引值开始,它的长度有所给予的length决定。 如果startIndex小于0,则会0来当作索引值。 如果length大于剩余字符的数目,则lenght会由剩余的字符数来代替。 如果startIndex予lenght是浮点数,则会先使用Float.int()来计算正确的整数值。 参数:string=字符数 startIndex=数字 lenght=数字 回传值:字符串或invalid 例外状况:如果startIndex大于最后的索引值,则回传会空字符串("") 如果lenght<=0,传会空字符串("") 范例:var a="ABCD"; var b=String.subString(a,1,2); //b="BC" var c=String.subString(a,2,5); //c="CD" var d=String.subString(1234,0,2); //d="12" find 程序:find(string,substring) 说明:传会所要寻找的字符串substring和原始字符串string相符的第一个字符的索引值。 如果没有相符,则传会整数值-1。 两个字符传如果是相等的话,是定义为不符合。 参数:string=字符串 substring=字符串 回传值:整数或invalid 例外状况:无 范例:var a="abcde"; var b=String.find(a,"cd"); //b=2 var c=String.find(34.2,"de"); //c=-1 var d=String.find(a,"gz"); //d=-1 var e=String.find(34,"3"); //e=0 replace 程序:eplace(tring,oldSubString,newSubString) 说明:传会新字符串,这个新字符串是由和所给予字符串string相符的旧字符传oldSubString使用新字符串newSubString字符串加以代替。如果两字符串相等的话,定义为相符。 参数:string=字符串 oldSubString=字符串 newSubString=字符串 回传值:字符串或invalid 例外状况:无 范例:var a="Hello Joe.What is up Joe?"; var newName="Don"; var oldName="Joe"; var c=String.replace(a,oldName,newName); //c="Hello Don.What is up Don?" var d=String.replace(a,oldName,newName); //c="Hello Don.What is up Don?" element 程序:element(string,separator) 说明:回传分隔符号separator所分隔的字符串string的元素数目,空字符串("")是有效的元素,这表示了这程序永远不会回传一个小于或等于0得值。 参数:string=字符串 separator=字符串 回传值:整数或invalid 例外状况:如果separator是个空字符串,则回传invalid 范例:var a="My name is Joe;Age 50"; var b=String.elements(a,"");//b=6 var c=String.elements(a,";");//c=3 var d=String.elements("",";");//d=1 var e=String.elements("a","");//e=1 var f=String.elements(";",";");//f=2 var g=String.elements(";;,;",";,");//g=4 separator=; elementAt 程序:elementAt(string,index,separator) 说明:寻找字符串string的第index个元素,这些元素是由分隔符号separator所加以分开,并回传相对应的元素。 如果index值小于0,则回传第一个元素。 如果index值大于元素的数目,则回传最后一个元素。 如果字符串为空字符串,则回传空字符串。 如果index值为浮点数,则须先使用Float.int()来计算出正确的索引值。 参数:string=字符串 index=数字 separator=字符串 回传值:字符串或invalid 例外状况:如果separator是个空字符串,则回传invalid 范例:var a="Hello Joe.What is up Joe?"; var b=String.elementAt(a,0,""); //b="My" var b=String.elementAt(a,14,";"); //c=" " var b=String.elementAt(a,1,";"); //d="Age 50" removeAt 程序:removeAt(string,index,separator) 说明:将符合索引值index的分隔号separator与元素有字符串string中移出,并回传这个新字符串。 如果index值小于0,则回传第一个元素。 如果index值大于元素的数目,则回传最后一个元素。 如果字符串为空字符串,则回传空字符串。 如果index值为浮点数,则须先使用Float.int()来计算出正确的索引值。 参数:string=字符串 element=字符串 index=数字 separator=字符串 回传值:字符串或invalid 例外状况:如果separator是个空字符串,则回传invalid 范例:var a=" A A;B C D"; var s= ""; var c=String.removeAt(a,1,s); //b="A B C D" var d=String.removeAt(a,0,";"); //c=" B C D" var e=String.removeAt(a,14,";"); //d="A A" replaceAt 程序:replaceAT(string,index,separator) 说明:在特定的index中的元素,使用所给予的元素element来代替,并回传这个新字符串。 如果index值小于0,则回传第一个元素。 如果index值大于元素的数目,则回传最后一个元素。 如果字符串为空字符串,则回传空字符串。 如果index值为浮点数,则须先使用Float.int()来计算出正确的索引值。 参数:string=字符串 element=字符串 index=数字 separator=字符串 回传值:字符串或invalid 例外状况:如果separator是个空字符串,则回传invalid 范例:var a= "B C; E"; var s=""; var d=String.replaceAT(a,"A",0,s); //b="A C;E" var e=String.replaceAT(a,"F",5,";"); //d="B C;F" InsertAt 程序:insertAt(string,index,separator) 说明:将元素element与相对应的分隔符号separator插入与原始字符串string,在特定的element中的元素 如果index值小于0,则0会用来当索引值。 如果index值大于元素的数目,则元素element会附加上字符串string的为端。 如果字符串string为空字符串,则回传包含所给予元素element的新字符串。 如果index值为浮点数,则需先使用Float.int()来计算出正确的索引值。 参数:string=字符串 element=字符串 index=数字 separator=字符串 回传值:字符串或invalid 例外状况:如果separator是个空字符串,则回传invalid 范例:var a= "B C; E"; var s=""; var b=String.insertAt(a,"A",0,s); //b="A B C;E" var c=String.insertAt(a,"X",3,s); //c="B C;E X" var d=String.insertAt(a,"D",1,";"); //d="B C;D;E" var e=String.insertAt(a,"F",5,";"); //e="B C;E;F" squeeze 程序:squeeze(string) 说明:将字符串string中所有连续的空格减少为一个空格。 参数:stromg=字符串 回传值:字符串或invalid 例外状况:无 范例:var a="Hello"; var b="Bye Jon.See you!"; var c=String.squeeze(a); //c="Hello" var d=String.squeeze(b); //d="Bye Jon.See you!" trim 程序:trim(string) 说明:将字符串string中所有开头与连续的空格删除。 参数:string=字符串 回传值:字符串或invalid 例外状况:无 范例:var a="Hello"; var b="Bye Jon.See you!"; var c=String.squeeze(a); //c="Hello" var d=String.squeeze(b); //d="Bye Jon.See you!" compare 程序:compare(string,string2) 说明:这个程序的回传值会指出string1与string2在语汇上关系,这个关系是基于自然字集的字符码之间,其回传值如下: 如果string1小于string2,传会-1。 如果string1等于string2,传会-1。 如果string1大于string2,传会-1。 参数:string1=字符串 string2=字符串 回传值:整数或invalid 例外状况:无 范例:var a="Hello"; var b="Hello"; var c=String.compare(a,b); //c=0 var d=String.compare("Bye","Jon"); //d=-1 var e=String.compare("Jon","Bye"); //e=1 toString 程序:toString(value) 说明:回传一个能表示所给予的值value的字符串,这个程序跟WML Script的转换是一样的,除了invlaid值会回传一个"invalid"字符串。 参数:value=任意值 回传值:字符串 例外状况:无 范例:var a=string.toString(12); // a="12" var a=string.toString(true); // b="true" format 程序:format(format,value) 说明:将给予的值value转换成字符串,并依照所给予的格式format提供的格式化的字符串,这个格式字符串只能由一种特定格式,并能放置于字符串的任何地方,如果超过一种以上的格式需要使用,则能会使用最左边的格式,至于其他格式则有空字符串代替,这些格式如下: [width][.precision]type width参数为非负的是近制整数,这个参数控制与显现字符的最小数目,如果输出的字数小于指定的宽度width,则会在字符串的左边加上空白,直到符合最小宽度的要求,width参数永远不会是值value被删减,如果输出的字数大于特定的宽度或并没指定宽度的话,value中所有的字符都会被显现。 precision参数是个非负的十进制整数,这个引号之前必须限价上(.)的符号,其目的是用来设定输入值的精确度,这个值的解议会跟给予的格式有关: d 界定数字最小的显现数目,如果value中数字的数目超过precision的值,输入值会在其左边加上0,如果数字的数目超过precision值,value的值并不会被删减,预设的precision值为1,如果precision值设定为0,而且value页被转换成0,则结果将是一个空字符串。 f 界定十进制小数后的数字数目,如果十进制的小数点出现了,在小数点之后至少要有一位数,这个值会被四舍五入到近似的数字数值,预设的precision为6,如果precision为0或小数点(.)后没有数字,则不会显现小数点,当value值的小数点后数字数目小于precision的值,字母0为被加入直到填满栏位(如:String.format("%2.3f",1.2)会是"1.200") s 界定字符所要显现的最大数目,预设值是显现所有的字符,当width值大于precision值,width值是可以忽略的,跟width值不同的是,precision只可能会造成浮点数值的四舍五入或输入值的删减。 type参数是唯一格式的参数,他出现在任何的格式栏为选项之后,type字符决定了所给予的value将会解译成整数,浮点数或字符串,支持的type参数如下: d 整数:输入值的格式[-]dddd,这里的dddd是一个或以上的十进制数字。 f 浮点数:输入值的格式[-]dddd.dddd,这里的dddd是一个或以上的十进制数字,在小数点之前的数字数目和数字的大小有关,小数点之后的数字数目和精确度有关。 s 字符串:字符的显现跟精确度有关。 百分比字符(%)在格式字符串中能使用额外的百分比字符加以表示(%%)。 参数:format=字符串 value=任意值 回传值:字符串或invalid 例外状况;无效的格式会回传invalid值。 范例:var a=45; var b=-45; var c="now"; var d=1.2345678; var e=String.format("e:%6d",a); //e="e:45" var e=String.format("%6d",b); //f="-45" var e=String.format("e:%6d",a); //g="0045" var e=String.format("%6.4d",b); //h="-0045" var e=String.format("Do it %s",c); //i="Do it now" var e=String.format("%3f",d); //j="1.2345678" var e=String.format("%10.2f%%",a); //k="1.23%." var e=String.format("%3f %2f",a); //l="1.234567." var e=String.format("%.0d",0); //m="" var e=String.format("%.7d","Int"); //n="invalid" var e=String.format("%s",ture); //o="ture" 编辑:黑鹰 [发送给好友] [打印本页] [关闭窗口] [返回顶部] 上一篇:WML Script脚本程序设计(二) 下一篇:没有了 转载请注明来源:www.iyit.net 特别声明: 本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。 |
| 相关文章 | ||||
| 友情链接 | ||||||
| 设置首 页 - 版权声明 - 广告服务 - 关于我们 - 联系我们 - 友情连接 |
| |||||||