多个参数和函数参数

*此内容使用人工智能(Beta)翻译,可能包含错误。若要查看英文页面,请点按 此处

函数实际上可以有多个参数,从而允许将多个参数(信息片段)传递给函数。一个例子可能是将玩家分配到一个团队。在这里,您需要一个参数来传入玩家,另一个参数来传入要分配他们的团队。

要设置多个参数,请用逗号分隔参数名称。


local function assignTeam(playerName, whichTeam)
end

练习多个参数

为了练习使用多个参数,创建一个将对象分类为垃圾或可回收物的函数。

  • 第一个参数将是垃圾,将被销毁。
  • 第二个参数将是可回收物,这将被重新变得闪亮如新。

设置函数

首先设置具有多个参数的函数,然后测试您的工作。

  1. ServerScriptService中创建一个新脚本。
  2. 编写一个名为 sortGarbage() 的新函数,带有两个参数,trashrecyclable
  3. 在脚本底部调用该函数。
  4. 使用打印语句快速检查到目前为止的代码。

local function sortGarbage(trash, recyclable)
print("garbage test")
end
sortGarbage()

使用多个参数

在函数内部,可以类比于变量使用参数。在这个例子中,trash 被销毁,然后使用粒子发射器给 recyclable 添加闪光效果。

  1. 删除打印语句,并使用 Instance.new() 创建一个新的粒子发射器,如下所示。这将用于给可回收物增添闪光效果。


    local function sortGarbage(trash,recyclable)
    -- 创建一个新的粒子发射器
    local sparkle = Instance.new("ParticleEmitter")
    end
    sortGarbage()
  2. 像处理其他变量一样,销毁通过垃圾参数传入的内容。


    local function sortGarbage(trash,recyclable)
    local sparkle = Instance.new("ParticleEmitter")
    -- 销毁垃圾
    trash:Destroy()
    end
    sortGarbage()
  3. 将粒子发射器的父级设置为可回收物。


    local function sortGarbage(trash,recyclable)
    local sparkle = Instance.new("ParticleEmitter")
    -- 销毁垃圾并使可回收物闪亮
    trash:Destroy()
    sparkle.Parent = recyclable
    end
    sortGarbage()

通过参数传递值

时间到处理垃圾了!设置好参数后,函数已经准备好接受信息。

  1. 使用基本部件创建两个对象来代表您可能会扔掉的东西。一个应该是垃圾,另一个是可回收的。确保它们有唯一的名称。

  2. 在脚本顶部,为您创建的对象添加变量。这些将是您的参数。


    local Workspace = game:GetService("Workspace")
    local cementBlock = Workspace.Cement
    local glassBottle = Workspace.GlassBottle
  3. 在脚本底部调用 sortGarbage() 的地方,传入每个参数。


    local Workspace = game:GetService("Workspace")
    -- 用作参数的对象
    local cementBlock = Workspace.CementBlock
    local glassBottle = Workspace.GlassBottle
    -- 销毁垃圾并整理可回收物
    local function sortGarbage(trash,recyclable)
    local sparkle = Instance.new("ParticleEmitter")
    trash:Destroy()
    sparkle.Parent = recyclable
    end
    -- 传入参数
    sortGarbage(cementBlock, glassBottle)
  4. 测试您的代码。第一个传入的对象将被销毁。第二个对象将闪光。

参数的顺序

通常,参数与参数的匹配是基于它们传入的顺序。例如,第一个参数用于第一个参数。第二个参数用于第二个参数。

在我们的例子中,有两个参数。无论传入什么,第一个始终是垃圾,第二个始终是可回收物。


-- 销毁垃圾并整理可回收物
local function sortGarbage(trash,recyclable)
local sparkle = Instance.new("ParticleEmitter")
trash:Destroy()
sparkle.Parent = recyclable
end
-- 按顺序进行。水泥被销毁,玻璃瓶被回收
sortGarbage(cementBlock, glassBottle)
-- 玻璃瓶被销毁,水泥块被回收
sortGarbage(glassBottle, cementBlock)

如果您只传入一个参数,那么该参数将被视为垃圾。如果您传入三个参数,由于没有第三个参数,第三个参数将不会发生任何变化。

总结

参数是通过它们可以传递值到函数的占位符。参数是通过占位符传递的值。您可以通过用逗号分隔名称来创建多个参数。当调用函数时,传入接收函数的值的顺序决定了它们使用的是哪个参数。

©2026 Roblox Corporation、Roblox、Roblox 标志及 Powering Imagination 是我们在美国及其他国家或地区的注册与未注册商标。