lua
-- basic.lua
print("hello ".."world")
local a = 1 --only this file can see
b = 2 -- global see
-- not declare vaiable all asign to nil
print(fuck)
-- 字符串可以"" ,'' ,[[]]
-- 一些数值运算支持,进制数,科学数,shift移
function f(a,b)
print(a,b)
return a + b,a - b
end
local sum,sub = f(1,2)
--table
local arr = {1,"hell",{},function() end}
-- index start from 1
print(arr[4])
print(#arr)
table.insert(arr,1,"fuck")
local name_table = {
a=1,
b="1111",
c=function ()
return "yes"
end,
d={}
}
print(name_table["c"])--get the value
--全局表_G
print(_G["table"]["insert"])
print(_G["b"])-- see the above global vaiable b
-- control flow
if 1+1 == 2 then
print(true)
elseif 1+1==3 and 1+1 == 0 then
print(false)--0 is true,only nil is false
else
print("what ever")
end
-- start end step
for i=10,1,-1 do
print(i)--this i just can read not write
if i == 5 then
break
end
end
local n = 10
while n > 1 do
print(n)
n = n - 1 --not support -- ++
if n==5 then
break
end
end
-- this module can return varlue
return 1
lua
-- multi-file.lua
-- auto run the file basic.lua code
local basic = require("basic")--and get the return from file basic.lua
print("b is ",b)-- get the basic global vaiable b
print(basic)
print(package.path)--?.lua, ?会被文件名替代
lua
-- example.lua
local example = {}
function example.hello()
print("hello")
end
return example
lua
-- use-example.lua
local example = require("example")
example.hello()
vscode key bind
- Ctrl + e
- Home
- End