lua ipairs pairs

2018-05-10 13:08:48

这两个函数都是用来遍历表格数组的,性能几乎没有区别,其他区别如下:

iparis只会遍历数字索引,并在遇到第一个非数字索引时终止

paris则会遍历所有

例子  

local t = {22,33,44,name='沧浪水',url='www.freecls.com',55,66}

t[10] = '100'
for k,v in ipairs(t) do
    print(k,v)
end
--[[
1	22
2	33
3	44
4	55
5	66
--]]

t.sec = 10
for k,v in pairs(t) do
    print(k,v)
end
--[[
1	22
2	33
3	44
4	55
5	66
sec	10
url	www.freecls.com
name	沧浪水
10	100
--]]


总结

1.本文对表格遍历做简单的介绍,如果有疑问可以给我留言
2.lua的版本为5.1,运行环境centos7 64位
3.原文地址http://www.freecls.com/a/2712/16

©著作权归作者所有
收藏
推荐阅读
  • lua 基本函数dofile loadfile loadstring

    dofile([filename])如果提供了filename则打开读取里面内容并以代码块方式执行,没提供则从标准输入stdin读取并执行。如果报错,错误会上传到到调用者(运行在非保护模式)例子新建a...

  • lua assert collectgarbage

    assert (v [, message])断言,主要是用来输出错误当v为false或nil时,message可选默认为assertion failed当v为true时返回v,和message两个参数...

  • lua require模块加载机制

    调用模块步骤当我们调用require "modname"1.会去检查package.loaded表格是否已经加载过,如果已经加载过直接返回,所以重复加载同一个模块多次只会加载1次2.如果package...

  • err
    lua os(操作系统)库

    lua os库提供了简单的跟操作系统有关的功能os.clock()返回当前当前cpu使用的秒数例子--用来计算中间的遍历花费了多少cpu时间 local x = os.c...

  • err
    lua io库(输入输出)

    lua io库提供了2种模式来文件处理1.简单模式-所有操作会在2个当前文件(默认为标准输入stdin,标准输出stdout)2.完全模式-基于文件句柄,功能丰富一点简单...

  • nginx模块 ngx_http_headers_module

    ngx_http_headers_module 模块是用来增加 Expires 和 Cache-control,或者是任意的响应头。Syntax: add_header name value [alw...

  • nginx模块 ngx_http_gunzip_module、ngx_http_gzip_module、ngx_http_gzip_static_module

    ngx_http_gunzip_module 模块将文件解压缩后并在响应头加上 "Content-Encoding: gzip" 返回给客户端。为了解决客户端不支持gzip压缩。编译的时候带上 --w...

  • nginx模块 ngx_http_flv_module、ngx_http_mp4_module

    ngx_http_flv_module模块提供了对 flv 视频的伪流支持。编译的时候带上 --with-http_flv_module。它会根据指定的 start 参数来指定跳过多少字节,并在返回数...

  • nginx模块 ngx_http_fastcgi_module

    ngx_http_fastcgi_module 模块使得nginx可以与 fastcgi 服务器通信。比如目前要使得 nginx 支持 php 就得使用 fastcgi技术,在服务器上装上 nginx...

  • nginx模块 ngx_http_autoindex_module

    ngx_http_autoindex_module 模块可以将uri以 / 结尾时,列出里面的文件和目录。Syntax: autoindex on | off; Default: autoindex ...

简介
天降大任于斯人也,必先苦其心志。