初學者必備文檔:Lua函數學習筆記
Lua函數學習筆記是本文要介紹的內容,內容很詳細的講解了LUA函數的使用方法,可以讓我們快速的去學習。這些函數都是Lua編程語言的一局部, 點擊這里打聽更多.
assert(value) - 察看一個值是否為非nil, 若不是則(萬一在wow.exe敞開調試號召)揭示對話框以及輸出訛謬調試消息
collectgarbage() - 草芥采集器. (新增于1.10.1)
date(format, time) - 歸來目前用戶機器上的工夫.
error("error message",level) - 發生訛謬時,輸出一條定義的訛謬消息.利用pcall() (見下面)捕捉訛謬.
gcinfo() - 歸來利用中插件內存的挪借量(kb)以及目前草芥采集器的利用量(kB).
getfenv(function or integer) - 歸來此表已獲得函數的堆棧構造可能堆棧等級
getmetatable(obj, mtable) - 獲得體前的元表可能用戶數據對象.
loadstring("Lua code") - 分析字符串中的lua代碼塊并且將收獲作為一個函數歸來
next(table, index) - 歸來下一個key,一對表值.批準遍歷全副表
pcall(func, arg1, arg2, ...) - 受防御調用. 厲行函數內容,同時捉拿所有的失常和訛謬.
select(index, list) - 歸來抉擇此列表中的商品數值.可能是此件物品在列表中的索引值
setfenv(function or integer, table) - 設置此表已獲得函數的堆棧構造可能堆棧等級
setmetatable(obj, mtable) - 設置目前表的元表可能用戶數據對象
time(table) - 歸來從一個unix工夫值
type(var) - 推斷目前變量的種類, "number", "string", "table", "function" 可能 "userdata".
unpack(table) - 解壓一個表.歸來目前表中的所有值.
xpcall(func, err) - 歸來一個布爾值指示獲勝厲行的函數以及調用失利的訛謬消息.另外運行函數可能訛謬的歸來值
數學函數
這些表函數同樣能夠參看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, pattern[, 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值).工作時,wq.0431wq.com與任何等他表并未曾差異,但很可能會發生鬼沒神出的收獲. 在編寫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中獲得了利用
bit.bnot(a) - 歸來一個a的賠償
bit.band(w1,...) - 歸來w的位與
bit.bor(w1,...) - 歸來w的位或
bit.bxor(w1,...) - 歸來w的位異或
bit.lshift(a,b) - 歸來a向左偏移到b位
bit.rshift(a,b) - 歸來a邏輯右偏移到b位
bit.arshift(a,b) - 歸來a算術偏移到b位
bit.mod(a,b) - 歸來a除以b的整數余數
Lua是一個腳本語言, 利用這些函數來對你的數據構造舉行比對是極其慢的. 除非你有一個極其大的數據庫以及必需防御的RAM利用, 保留你的消息到幾個或個別的變量中。
小結:初學者必備文檔:Lua函數學習筆記的內容介紹完了,希望通過本文的學習能對你有所幫助!