기본 매개변수 값
Coddy Lua 여정의 Luau 소개 섹션에 포함된 레슨. 80개 중 27번째.
선택적 매개변수는 처리해야 할 nil 값을 남깁니다. 대개 실제로 원하는 것은 대체 값입니다. 즉, “호출자가 지정하지 않으면 X라고 가정한다”는 것입니다. Luau에는 함수 시그니처에 기본값을 지정하는 문법이 없습니다(greeting: string = "Hello"처럼 쓸 수 없습니다). 대신 이제 타입을 사용하는 전통적인 Lua 관용구를 씁니다.
function greet(name: string, greeting: string?): string
greeting = greeting or "Hello"
return `{greeting}, {name}`
end
print(greet("Alice")) -- Hello, Alice
print(greet("Alice", "Howdy")) -- Howdy, Alice매개변수에는 선택 사항이라는 주석이 붙어 있고(string?), 본문 첫 줄에서 nil을 기본값으로 바꿉니다. nil은 거짓으로 취급되므로 이 방식이 작동합니다. nil or "Hello"는 "Hello"로 평가됩니다. 이 줄이 실행된 뒤에는 검사기가 greeting이 더 이상 nil일 수 없다는 것을 알게 됩니다.
챌린지
쉬움선택적 매개변수에 기본값을 지정하세요.
local function calculateTax(price: number, rate: number?): number를 작성하세요.- 첫 번째 줄은
rate = rate or 0.05이며, 그다음price * rate를 반환하세요. calculateTax(100)과calculateTax(200, 0.08)을 출력하세요.
코드 실행을 누르세요. 출력에는 5와 16이 차례로 표시됩니다.
직접 해보기
-- 1) calculateTax(price: number, rate: number?): number
-- `or` 관용구를 사용해 기본 세율을 0.05로 설정
-- 2) calculateTax(100)과 calculateTax(200, 0.08)의 결과를 출력
Luau 소개의 모든 레슨
4함수 다루기
매개변수와 반환값의 타입 지정익명 함수의 타입 지정아무것도 반환하지 않는 함수선택적 매개변수기본 매개변수 값불리언 기본값가변 인자 함수함수 타입 정의하기복습: 타입이 지정된 함수직접 연습해 보세요: 온라인 Luau 컴파일러