Lua 面试题(含详细实战答案).docxVIP

  • 1
  • 0
  • 约3.46千字
  • 约 6页
  • 2026-08-24 发布于河北
  • 举报

Lua面试题(含详细实战答案)

一、基础语法篇(入门高频)

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

答案:

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

nil和false核心区别:

nil:空值、未定义值,变量未赋值、访问不存在的表键都会返回nil;nil在条件判断中为假,nil==false结果为false,二者不是同一个值。

false:布尔假值,仅true/false是布尔类型。

补充:Lua中只有nil、false为假,0、空字符串、空表都是真。

2.Lua变量的全局、局部变量区别?推荐怎么用?

答案:

全局变量:不加local声明,全局环境通用,生命周期贯穿脚本全程。缺点:污染全局环境、变量冲突、查找速度慢、GC无法回收。

局部变量(local):仅当前代码块有效,出块销毁,查找速度远快全局,内存可控。

工程规范:所有变量默认加local,非必要不定义全局变量。

3.Lua字符串和数字的隐式转换规则?会出现什么坑?

答案:

Lua运算时会自动隐式转换:

算术运算:字符串会尝试转数字,比如10+5=15

拼接运算:数字会自动转字符串,比如10..5=105

常见坑:

拼接符号..优先

文档评论(0)

1亿VIP精品文档

相关文档