赞
踩
(一)全局变量
--全局变量
a=1--全局变量
c=3--全局变量
for i=1,3 do
d="world"
end
print(d)--d,这里是d出了循环体还能用,是全局变量
(二)本地变量,local
--本地变量的关键字是local
for i=1,3 do
local e="world"--这个e只能在这个循环里使用
print("hell"..e)--打印三次,hellworld
end
local f="root"
print(f)--root
(三)多脚本执行:require
require加载过一次的脚本,再加载不会被执行
-多脚本执行
--关键字 require,require("脚本名") require('脚本名'),这里的脚本是同一个目录的脚本,不同的要写全路径
--加载别的脚本后,可以使用这个脚本的全局变量和全局函数
require("test")--test lua,lua test,会把脚本里的print语句打印出来
require('test')--什么也不打印,因为上面执行过了test脚本
print(a)--root,a是test脚本里的全局变量
print(c)--c在test脚本里是局部变量,不会打印hello
print(f1("nihao"))--nihao,f1是test脚本里的全局函数
print(d[1].name)--1,d是test脚本里的全局表
test.lua
--用来测试多脚本执行的
print("test lua")
print("lua test")
a="root"
local c="hello"
function f1(a)
print(a)
end
d={{name=1,age=13}}
(四)脚本卸载
--脚本卸载
--判断脚本是否被加载
--package.loaded["脚本名"]--返回的是个bool,判断该脚本有没有被加载过
print(package.loaded["test"])--true
--把加载过的脚本卸载
package.loaded["test"]=nil
print(package.loaded["test"])--nil
--卸载完后又能加载了
require('test')--test lua,lua test
(五)大G表
–大G表
–_G表是个总表(table)存储了声明的全部的全局变量,不存本地变量
所以这就是为什么加载了别的脚本,可以使用别的脚本里的全局变量
(六)小技巧,打印别的脚本里的本地变量,可以在该脚本中用return返回这个本地变量,然后另一个要使用它的脚本,拿个变量接就可以使用了。
h=require('test')--test lua,lua test
print(h)--hello,用h变量接住了test脚本里的本地变量c
test.lua
--用来测试多脚本执行的
print("test lua")
print("lua test")
a="root"
local c="hello"
function f1(a)
print(a)
end
d={{name=1,age=13}}
return c
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。