틀:JSON: 두 판 사이의 차이

리버티게임, 모두가 만들어가는 자유로운 게임
백괴게임>Gustmd7410
imported>Regurus
잔글 (Regurus의 편집을 [[특수:기여/imported>Gustmd7410|imported>Gustmd7410]]의 마지막 판으로 되돌림)
 
(사용자 2명의 중간 판 46개는 보이지 않습니다)
1번째 줄: 1번째 줄:
= [[틀:JSON]] =
<onlyinclude><includeonly>{{안전풀기:#switch:{{안전풀기:#invoke:JSON|typ|{{안전풀기:#ifexist:{{{1}}}|{{:{{{1}}}}}|{{{1}}}}}|{{{2}}}}}|boolean={{안전풀기:#switch:{{안전풀기:#invoke:JSON|get|{{안전풀기:#ifexist:{{{1}}}|{{:{{{1}}}}}|{{{1}}}}}|{{{2}}}}}|true={{{true|true}}}|false={{{false|false}}}}}|nil={{{3|}}}|#default={{안전풀기:#invoke:JSON|get|{{안전풀기:#ifexist:{{{1}}}|{{:{{{1}}}}}|{{{1}}}}}|{{{2}}}}}}}</includeonly></onlyinclude>
<onlyinclude><includeonly>{{#switch:{{{1}}}|get|set={{#invoke:JSON|{{{1}}}|{{#if:{{{2|}}}|{{{2}}}|{} }}|{{{3}}}|{{{4}}}}}|#default=<span class="error">잘못된 동작을 입력하였습니다.</span>}}</includeonly></onlyinclude>
{{설명문서}}
 
= 설명문서 =
JSON 데이터를 읽어들여 값을 반환하거나, 데이터를 수정합니다. 이 틀을 사용해 데이터를 수정한 뒤, {{틀|}}을 함께 사용하시면 좋습니다.
 
== 사용법 ==
=== 변수 ===
<code>[]</code>로 묶이는 배열을 사용하고 싶으시다면 변수를 숫자로 지정해 주세요. 숫자로 된 변수는 배열의 순서로 인식됩니다. <code>{}</code>로 묶이는 속성을 사용하려면 숫자로만 이루어진 변수명만 아니면 됩니다.
 
=== JSON 코드 ===
JSON 코드는 다음과 같은 다양한 상황에서 입력이 가능합니다. 아래와 같은 내용을 두번째 변수에 입력해 주세요.
* JSON 코드 직접 입력
* JSON 문서 불러오기
:JSON 문서를 불러와서 입력하시려면 다음과 같이 틀의 형태로 입력해 주세요.
<pre>{{사용자:홍길동/데이터.json}}
{{:한게임/DB}}</pre>
* 빈 JSON 코드
:비어있는 JSON 코드를 사용하시려면 그냥 두번째 변수를 비워두시면 됩니다.
 
=== 변수값 얻기 ===
JSON 데이터에 있는 변수의 값을 얻으려면 다음과 같이 입력합니다:
<pre>{{JSON|get|(JSON 코드)|(변수)}}</pre>
위와 같이 입력하시면 해당 변수의 값만 그대로 나옵니다.
 
예를 들어, <code>var</code> 변수의 값을 얻는다면 이렇게 입력하세요:
<pre>{{JSON|get|(JSON 코드)|var}}</pre>
 
=== 변수값 변경 ===
{{#vardefine:value|{{#rand:0|9}}}}
JSON 데이터에 있는 변수의 값을 변경하려면 다음과 같이 입력합니다:
<pre>{{JSON|set|(JSON 코드)|(변수)|(값)}}</pre>
위와 같이 입력하시면 해당 변수의 값이 변경된 JSON 코드가 반환됩니다. 값이 변경된 변수는 맨 뒷쪽으로 오게 될 수 있습니다.
 
예를 들어, <code>var</code> 변수의 값을 <code>{{#var:value}}</code>로 변경할 경우 이렇게 입력하세요:
<nowiki>{{JSON|set|(JSON 코드)|var|</nowiki>{{#var:value}}<nowiki>}}</nowiki>
 
* 변수 추가
:JSON 데이터에 있는 변수를 추가하려면 변수값을 변경할 때와 같이 입력하시면 됩니다.
 
* 변수 제거
:JSON 데이터에 있는 변수를 제거하려면 다음과 같이 변수값을 변경할 때의 값을 입력하지 않으면 됩니다.
:<pre>{{JSON|set|(JSON 코드)|(변수)}}</pre>
:위와 같이 입력하
:
:예를 들어, <code>var</code> 변수를 제거하려면 이렇게 입력하세요:
:<pre>{{JSON|set|(JSON 코드)|var}}</pre>
 
=== 작업 조합 ===
만약 여러 작업을 동시에 하고 싶다면 두번째 변수에 이 틀을 다시 넣을 수 있습니다. 이런식으로 말이지요:
<nowiki>{{JSON|get|
{{JSON|set|
{{JSON|set|
{{JSON|set|
{"var":"asdf"}
|var}}
|var1|</nowiki>{{#rand:0|9}}<nowiki>}}
|var2|</nowiki>{{#rand:0|9}}<nowiki>}}
|var1}}</nowiki>
 
== [[도보시오]] ==
* [[:]]

2020년 8월 30일 (일) 17:20 기준 최신판


틀 설명문서[보기] [편집] [역사] [새로 고침]

JSON 데이터 문서의 값을 불러옵니다.

주의사항[원본 편집]

이 틀은 루아를 기반으로 하며, 루아에서는 배열의 순서가 1부터 시작합니다. 이 점 유의해 주세요.

["aaa", "bbb", "ccc", "ddd"]
JS Lua
0 aaa 1
1 bbb 2
2 ccc 3
3 ddd 4

사용법[원본 편집]

{{JSON|(데이터)|(변수)|(기본값)
|true=(값이 true일 때)
|false=(값이 false일 때)
}}

위와 같이 입력하시면 해당 변수의 값만 그대로 나오며, 값이 없는 경우 기본값에 입력된 값이 나옵니다. 값이 true, false일 경우 나올 값도 설정할 수 있으며, 만약 빈 칸으로 출력되기를 원한다면 변수의 값을 비우시면 됩니다. 값이 없거나 null일 경우 기본값이 나옵니다.

JSON 데이터 부분에는 문서명이나 코드를 입력하시면 됩니다. 또한, 이 틀을 이부분에 다시 넣어서 객체나 배열 안에 있는 객체나 배열의 값을 불러올 수도 있습니다.

예를 들어, JSON 객체 형식의 한게임/DB/너 문서에 배열로 저장된 var 변수의 첫번째 값을 얻는다면 이렇게 입력하세요:

{{JSON|{{JSON|한게임/DB/너|var}}|1}}

도보시오[원본 편집]