微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Lua函数

这些函数都是Lua编程语言的一部分,点击这里了解更多.

 

数学函数

 

这些表函数同样可以参考Lua函数库(他们都是以math.开头,详情参阅数学库了解更多信息).

三角函数是没有参考的,包括角度->弧度的转换.暴雪的版本使用角度.而Lua的标准数学库则使用的弧度.

  • abs(value) - 返回当前数值的绝对值

  • acos(value) - 返回此角度值的弧余弦值.

  • asin(value) - 返回此角度值的弧正弦值

  • atan(value) - 返回此角度值的弧正切值

  • atan2(y,x) - 在角度中,返回Y/X的弧正切值.

  • ceil(value) - 返回一个整数,不管小数点后面是多少,整数部分都进1

  • cos(degrees) - 返回角度的余弦值

  • deg(radians) - 弧度转换角度

  • exp(value) - 返回此值的指数值

  • floor(value) - 返回此值的整数值

  • frexp(num) - 返回当前数字小数点后的数值以及小数点后的位数

  • ldexp(value,倍数) - 输出此数值的倍数

  • log(value) - 返回此值的自然对数 (以e为底数)

  • log10(value) - 返回以10为底数的值

  • max(value[,values...]) - 在一堆值中查找最大值

  • min(value[,values...]) - 在一堆值中查找最小值

  • mod(value,modulus) - 返回此值的余数

  • rad(degrees) - 角度转换弧度

  • random([ [lower,] upper]) - 返回一个随机数字 (可选界限为整数值)

  • randomseed(seed) - 为伪随机数字生成器设定种子

  • sin(degrees) - 返回当前角度的正弦值

  • sqrt(value) - 返回数值的平方根值(比如100的平方根为10)

  • tan(degrees) - 返回当前角度的正切值

 

字符串库

 

这些表函数同样可以参考Lua字符串库(他们都是以string.开头,参考字符串库了解更多信息)

  • format(formatstring[,value[,...]]) - 格式化字符串

  • gsub(string,pattern,replacement[,limitCount]) - 全局替换

  • strbyte(string[,index]) - 转换字符串为整数值(可以指定某个字符).

  • strchar(asciiCode[,...]) - 转换整数为相对应的字符

  • strfind(string,pattern[,initpos[,plain]]) - 在一个指定的目标字符串中搜索指定的内容(第三个参数为索引),返回其具体位置.

  • strlen(string) - 返回当前字符串的字符数

  • strlower(string) - 将字符串的字母转换为小写格式

  • strmatch(string,initpos]) - 与strfind不同的是,macth返回的是具体值,而find返回的是此值的位置

  • strrep(seed,count) - 返回一个字符串种子副本的个数

  • strsub(string,index[,endindex]) - 返回字符串指定位置的值.

  • strupper(string) - 将字符串的字母转为大写格式

  • tonumber(arg[,base]) - 若参数能转为数字则返回一个数值.可以指定转换的类型.认为十进制整数

  • tostring(arg) - 转换参数为字符串

下面的字符串函数是wow独有的

  • strtrim(string) - 去除字符串前后空格

  • strsplit(delimiter,string) - 分割字符串

  • strjoin(delimiter,string,string[,...]) - 根据定界符将字符串连接起来

 

函数

 

这些表函数同样可以参考Lua表库 (他们都是以"table.开头",查阅Table库 f了解更多信息).

也知道,很多表都被设计为只有数字索引,开始于1并且没有结尾(如like {[1] = "foo",[3] = "bar"} --- [2]是不存在的所以为nil值).工作时,与任何其他表并没有差别,但很可能会产生意想不到的结果. 在编写lua中,这个也就是通常所说的bug

  • foreach(table,function) - 为表中的每个元素执行函数

  • foreachi(table,function) - 为表中的每个元素执行函数,按顺序访问(不推荐,可以使用ipairs代替)

  • getn(table) - 当作为一个聊表时,返回当前表的大小. 现在已经废弃了,你可以直接使用#符号.使用#(table)代替table.getn(table)

  • ipairs(table) - 返回一个迭代型整数遍历表。

  • pairs(table) - 返回一个迭代遍历表

  • sort(table[,comp]) - 对一个数组进行排序,还可以指定一个可选的次序函数

  • tinsert(table[,pos],value) - 将一个元素插入指定的位置(认在表的最后)

  • tremove(table[,pos]) - 删除指定位置的元素(认表最后一个)

 

Bit Functions

 

魔兽世界包含了Lua BitLib库(他们都是以 "bit."开头). 与C的位运算相同.位运算库并非Lua标准函数库的一部分,但是在WoW 1.9中得到了应用

Lua是一个脚本语言,使用这些函数来对你的数据结构进行比对是十分慢的. 除非你有一个非常大的数据库以及需要保护的RAM使用,保存你的信息到几个或个别的变量中.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐