Lua变量以及赋值,索引操作
--变量类型:全局变量,局部变量,表中的域
--[[
--Lua 中的变量全是全局变量,那怕是语句块或是函数里,除非用 local 显式声明为局部变量。
--局部变量的作用域为从声明位置开始到所在语句块结束。
--变量的默认值均为 nil
a=5 --全局变量
local b=6 --局部变量
function joke()
c=4 --尽管在函数中,也是全局变量,除非用local声明
local d=7
end
joke()
print(c,d) --输出结果为4 nil ,则local表示的是局部变量,d打印出来的值为nil
do
local a=6
b=6 --为局部变量重新赋值
print(a,b)
end
a=3 --为全局变量重新赋值
print(a,b)
--]]
--赋值语句
--[[
--1,Lua 可以对多个变量同时赋值,变量列表和值列表的各个元素用逗号分开,赋值语句右边的值会依次赋给左边的变量。
a,b=6,7
print(a,b)
--2.交换变量的值
-- x,y=y,x
-- a[i],a[j]=a[j],a[i]
--3,
--a. 变量个数 > 值的个数 按变量个数补足nil
--b. 变量个数 < 值的个数 多余的值会被忽略
a,b,c=0,1
print(a,b,c)
c,d=7,8,9
print(c,d)
--多值赋值经常用来交换变量,或将函数调用返回给变量:
--a,b=f()
f()返回两个值,第一个赋给a,第二个赋给b。
应该尽可能的使用局部变量,有两个好处:
1. 避免命名冲突。
2. 访问局部变量的速度比全局变量更快。
--]]
--索引 对table的索引使用方括号[],也可使用. 来操作
--[[
site={}
site["key"]="www.runoob.com"
print(site["key"])
print(site.key)
--]]