1.#table 可以用來判斷乙個陣列的長度,但需要注意的是,若table中包含nil,則不可使用。
2.table.sort同理,需要排序的table必須是1到n連續的,中間不能有nil。
3.盡量使用區域性變數,函式function也是如此,因為在lua裡函式也是乙個變數。區域性變數的訪問會更快,且生命週期外就會被釋放。
4.避免使用table.insert()
方法1:
local a = {}
local table_insert = table.insert
for i = 1,100 do
table_insert( a, i )
end
方法2:
local a = {}
for i = 1,100 do
a[#a+1] = i
end
方法3:
local a = {}
for i = 1,100 do
a[i] = i
end
推薦使用方法3。其中方法3遠優於1,2。而方法1略優於方法2。
5.關於for迴圈的乙個測試(具體原理不知= =)
test1:
local a = {}
for i = 1,1000 do
a[i] = i
endfor i = 1,#a do
print(a[i])
end
test2:
local a = {}
for i = 1,1000 do
a[i] = i
endlocal length = #a
for i = 1,length do
print(a[i])
end
test3:
local a = {}
for i = 1,1000 do
a[i] = i
endfor k,v in pairs(a) do
print(v)
end
test4:
local a = {}
for i = 1,1000 do
a[i] = i
endfor k,v in ipairs(a) do
print(v)
end
說說結果吧,所需時間上4>3>2>1。居然1是最優的。我原以為2應該優於1。不知為何是這種結果。 jquery的一些使用小結
目錄 1 jquery如何判斷兩個元素是否同一物件?2 jquery獲取html標籤,包含該標籤本身?兩個不同的 jquery 物件可能是對同乙個 組 dom 物件的封裝,這個時候可以用is來判斷,比如 var a editor var b editor console.log a b false ...
三 shell的一些注意點
1.使指令碼具有執行許可權 chmod x test.sh 2.shell變數名和等號之間不能有空格,例如 myname zhangsan 3.單引號字串的限制 單引號裡的任何字元都會原樣輸出,單引號字串中的變數是無效的 單引號字串中不能出現單引號 對單引號使用轉義符後也不行 4.bash支援一維陣...
selenimu一些使用注意點
1.從selenium ide1.8.1錄製好指令碼後,轉換成python2 remote control 指令碼,注意例項的名字空格問題。有空格的話,轉換成的python指令碼的類名字,也有空格,這會造成語法問題。解決辦法 用 代替空格。2.如果轉換好的指令碼有中文,往往會報編碼錯誤,non as...