Lua 面试题(含真实接地气答案).docxVIP

  • 0
  • 0
  • 约3.72千字
  • 约 7页
  • 2026-08-24 发布于河北
  • 举报

Lua面试题(含真实接地气答案)

说明:整套题目适配游戏开发、Lua后台、OpenResty岗位,无书面化空话,答案贴合日常开发,为行业真实面试高频考点。

一、基础语法篇(入门必考)

1、Lua有哪些基础数据类型?nil和false的区别是什么?

答案:

Lua基础类型:nil、boolean、number、string、table、function、userdata、thread。

核心区别:

1.nil代表「空、不存在」,全局变量未赋值、访问table不存在的key,结果都是nil;nil会直接释放变量占用的内存。

2.false是布尔假值,只是逻辑判断为假,变量本身是存在、有定义的。

补充:Lua中只有nil和false为假,0、空字符串、空table全部为真。

2、Lua中#取长度的坑有哪些?

答案:

#只对连续数字索引、从1开始的数组部分生效,坑点非常多:

1.数组中间有断层,#会截断,只统计断层前的长度;

2.table包含字符串key、自定义key时,#完全不统计;

3.数组从0/非1数字开始索引,#结果不准;

4.空table#返回0,正常连续数组可正常取值。

实战建议:纯数组用#,混合table遍历必须用pairs。

3、local全局变量和局部变量的区别?开发中为什么优先用local?

答案:

1.

文档评论(0)

1亿VIP精品文档

相关文档