什么是 Luau?
本课属于 Coddy Lua 学习旅程的“Luau 入门”单元。第 1 课,共 80 课。
Luau 是 Roblox 创建的一种编程语言,它基于你已经熟悉的 Lua,并添加了渐进式静态类型。你可以把它看作带有额外安全保障和工具支持的 Lua。数百万个 Roblox 体验都由它驱动,而且它自 2021 年起就已开源。
关键在于,Luau 是 Lua 5.1 的超集。任何有效的 Lua 5.1 代码也是有效的 Luau 代码:你可以将前面几个单元中编写的脚本直接作为 Luau 运行,无需修改。
Luau 在此基础上增加了类型注解。注解会声明变量应该存放哪种数据,例如字符串、数字、布尔值或表,这样在代码运行之前就能发现错误:
-- Lua(也适用于 Luau)
local playerName = "Rio"
-- 带有类型注解的 Luau
local playerName: string = "Rio"“渐进式”这一点很重要:类型注解是可选的。你可以为一个变量、一个函数或整个文件添加类型:未标注类型的 Lua 风格代码仍然可以正常运行,你可以按照自己的节奏逐步添加类型。
作为回报,你能获得更完善的编辑器工具支持、更易读的代码,以及防止这类错误的保护,而普通 Lua 只有在程序运行时才会发现这些错误。
挑战
简单将这个 Lua 变量改为带类型的 Luau 变量。
- 在
local message = "Hello World"这一行,在message后面添加: string。 - 保持
print(message)这一行不变。
按下运行代码:输出会显示 Hello World。
亲手试试
-- 普通 Lua:message 还没有类型
local message = "Hello World"
print(message)
Luau 入门中的所有课
自己练习: Luau 在线编译器