redis lua local 作用域
来源:互联网 发布:java script没有提示 编辑:程序博客网 时间:2024/06/07 01:09
lua 不加前缀定义的为全局变量, 例如 :
i = 1 -- 这样定义的为全局变量.
定义本地变量使用local前缀, 例如 :
local i = 1 -- 定义一个本地变量.
本地变量的作用域比较诡异, 特别是在命令行中很"诡异", 需要理解这个chunk.
Unlike global variables, local variables have their scope limited to the blockwhere they are declared. A block is the body of a control structure, the body of afunction, or a chunk (the file or string where the variable is declared):
本地变量定义在一个函数体中, 那么作用域就在函数中.
如果定义在一个控制结构中, 那么就在这个控制结构中.
如果定义在一个文件中, 那么作用域就在这个文件中.
如果是使用命令行的话, 一条完整的命令就是一个chunk, 所以例如 :
> local i = 1> print(i)nil
因为上面那条local i = 1是一个chunk, 定义完就抛弃了.
所以下面打印的是全局变量i, 而不是本地变量i.
除非写在一个执行体中.
> do>> local i = 1>> print(i)>> end1
在命令行中一个chunk很好区分, >就是一个chunk , >>表示执行体未结束.
对于文件的话, 本地变量作用域在文件中, 所以以下文件可以打印出i=1
[root@db-172-16-3-150 ~]# vi lualocal i = 1print(i)[root@db-172-16-3-150 ~]# lua ./lua1
在控制结构中的例子 :
> if true then>> local x = 1>> print(x)>> end1> print(x)nil
> i = 0> while i < x dolocal x = i*2 -- this x is localprint(x)i = i+1end024681012141618>
0 0
- redis lua local 作用域
- Lua local
- perl变量作用域--local,my,our
- lua-redis
- redis lua
- redis lua
- lua中尽量使用local
- lua local 变量和表
- 3.3.2 - [basic.scope.local] - 【基本.作用域.局部】
- [Perl语法篇] 变量作用域:our、local、my、state
- [Ruby笔记]25.local scope 本地作用域
- php和lua的变量作用域
- 3文件作用 --rc.local
- LUA脚本的作用。
- lua操作redis
- redis-lua安装笔记
- nginx+lua+redis
- Nginx+Lua+Redis实例
- activiti开发注意事项
- delphi调用dll
- ios应用开发19——相机和相册的使用
- 必须在构造函数基/成员初始值设定项列表中初始化
- 走近云计算
- redis lua local 作用域
- 使用Spring @Async异步执行方法的笔记
- ofbiz最新版13.07.01环境搭建、安装(linux环境下)
- Xcode5和6共存时,如何发布应用到商店
- HDU 2102 A计划
- 封装网络请求库,统一处理通用异常 (基于volley网络请求库)
- hdu1005Number Sequence
- 图像锐化(增强)和边缘检测
- xml 特殊字符的表示