这节会讨论标准的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

点赞(0) 打赏

评论列表 共有 0 条评论

暂无评论

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部