多個參數和引數

*此內容是使用 AI(Beta 測試版)翻譯,可能含有錯誤。若要以英文檢視此頁面,請按一下這裡。

函數實際上可以擁有多個參數,允許將多個引數(資訊片段)傳遞到函數中。一個例子可能是將玩家分配到一個隊伍。在這裡,你需要一個參數來傳遞玩家,和一個參數來傳遞要將他們分配到哪個隊伍。

要設置多個參數,請用逗號分隔參數名稱。

local function assignTeam(playerName, whichTeam)
end

練習多個參數

為了練習使用多個參數,創建一個將物體分為垃圾或回收的函數。

  • 第一個參數將是垃圾,這將被摧毀。
  • 第二個參數將是回收物,這將變得閃亮如新。

設置函數

首先設置具有多個參數的函數,然後測試你的工作。

  1. 在 ServerScriptService 中創建一個新腳本。
  2. 編碼一個名為 sortGarbage() 的新函數,包含兩個參數 trash 和 recyclable。
  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 是我們在美國及其他國家地區的部分註冊與未註冊商標。