원문 : https://developer.roblox.com/en-us/articles/Nil
Lua에서 nil은 '존재하지 않음'을 나타내기 위해 사용됩니다. 테이블의 값을 제거하거나 스크립트에서 변수를 파괴(Destroy)하는데 주로 사용됩니다.
1
2
3
4
5
6
7
8
9
10
11
|
local dictionaryTable = {
Monday = 1,
Tuesday = 2,
Wednesday = 3
}
-- 'Tuesday' 키의 값을 출력
print(dictionaryTable.Tuesday)
-- 'Tuesday' 키를 비움(Clear)
dictionaryTable.Tuesday = nil
-- 다시 해당 키의 값을 출력
print(dictionaryTable.Tuesday)
|
로블록스에서 nil은 Instance 개체의 Parent를 제거해 빠르게 게임에서 사라지게 하는 것 또한 가능합니다. 또, Parent를 다시 생성해 원래대로 돌릴 수도 있습니다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
-- 새로운 Part를 생성
local part = Instance.new("Part")
-- 부모를 workspace로 설정해 볼 수 있도록 한다.
part.Parent = workspace
wait(1)
-- Part를 볼 수 없게 했지만, 메모리에는 여전히 남아있다.
part.Parent = nil
wait(1)
-- 변수 'part'에 의해 참조되고 있기 때문에, Part는 여전히 존재한다. 그래서 다시 볼 수 있게 돌릴 수 있다.
part.Parent = workspace
wait(1)
-- 다시 Part를 볼 수 없게 한다.
part.Parent = nil
-- part의 참조를 제거해 Part를 쓰레기 수집기가 가져갈 수 있도록 한다.
part = nil
|
'Lua Docs' 카테고리의 다른 글
Table(테이블) (0) | 2021.03.29 |
---|---|
Strings(문자열) (0) | 2021.03.28 |
Number(수) (0) | 2021.03.28 |
Booleans(부울, 부울린) (0) | 2021.03.28 |