모듈:JSON/설명문서: 두 판 사이의 차이
백괴게임>Gustmd7410 잔글 (→작업 조합) |
편집 요약 없음 |
||
(사용자 3명의 중간 판 16개는 보이지 않습니다) | |||
3번째 줄: | 3번째 줄: | ||
== 주의사항 == | == 주의사항 == | ||
이 모듈은 <code>null</code>을 없는 값으로 간주합니다. 따라서 null 값을 보존하려면 이 모듈을 사용하지 말것을 권장합니다. | 이 모듈은 <code>null</code>을 없는 값으로 간주합니다. 따라서 null 값을 보존하려면 이 모듈을 사용하지 말것을 권장합니다. | ||
< | <syntaxhighlight lang="json"> | ||
사용전: | 사용전: | ||
{"var1": true, "var2": null, "var3": false} | {"var1": true, "var2": null, "var3": false} | ||
9번째 줄: | 9번째 줄: | ||
사용후: | 사용후: | ||
{"var1": true, "var3": false} | {"var1": true, "var3": false} | ||
</ | </syntaxhighlight> | ||
루아에서는 배열의 순서가 1부터 시작합니다. 이 점 유의해 주세요. | 루아에서는 배열의 순서가 1부터 시작합니다. 이 점 유의해 주세요. | ||
< | <syntaxhighlight lang="json">["aaa", "bbb", "ccc", "ddd"]</syntaxhighlight> | ||
{| class="wikitable" | {| class="wikitable" | ||
! JS | ! JS | ||
36번째 줄: | 36번째 줄: | ||
객체의 경우 속성이 표시되는 순서가 바뀔 수 있습니다. 단, 배열은 해당되지 않으며 객체의 순서가 바뀌어도 속성명은 변하지 않으므로 변수를 호출할 때에 큰 문제는 없습니다. | 객체의 경우 속성이 표시되는 순서가 바뀔 수 있습니다. 단, 배열은 해당되지 않으며 객체의 순서가 바뀌어도 속성명은 변하지 않으므로 변수를 호출할 때에 큰 문제는 없습니다. | ||
< | <syntaxhighlight lang="json"> | ||
사용전: | 사용전: | ||
{"var1": "aaaa", "var2": 1234, "var3": true} | {"var1": "aaaa", "var2": 1234, "var3": true} | ||
44번째 줄: | 44번째 줄: | ||
{"var2":1234,"var3":true,"var1":"aaaa"} | {"var2":1234,"var3":true,"var1":"aaaa"} | ||
[1,3,5,9] | [1,3,5,9] | ||
</ | </syntaxhighlight> | ||
== 사용법 == | == 사용법 == | ||
50번째 줄: | 50번째 줄: | ||
객체를 사용한다면 속성명을 그대로 입력하시면 됩니다. | 객체를 사용한다면 속성명을 그대로 입력하시면 됩니다. | ||
JSON에서는 문자열, 숫자, 부울, 배열, 객체, null을 다루며, 이 틀에서 값을 입력할 때 기본적으로는 문자열으로 처리되지만, | JSON에서는 문자열, 숫자, 부울, 배열, 객체, null을 다루며, 이 틀에서 값을 입력할 때 기본적으로는 문자열으로 처리되지만, JSON 값의 형식에 맞춰서 입력한다면 자동으로 타입이 적용됩니다. 만약 강제적으로 문자열을 적용하고 싶다면 <code>""</code>로 이스케이프하실 수 있습니다. 만약, 이스케이프된 문자열을 ""로 묶고 싶으시다면 그 안에 | ||
""를 더 넣으실 수 있습니다. (예시: <code>"true"</code>→<code>true</code>, <code>""123""</code>→<code>"123"</code>) | ""를 더 넣으실 수 있습니다. (예시: <code>"true"</code>→<code>true</code>, <code>""123""</code>→<code>"123"</code>) | ||
56번째 줄: | 56번째 줄: | ||
=== JSON 코드 === | === JSON 코드 === | ||
JSON | 조작할 JSON 데이터를 특정합니다. 상황에 따라 다음 중 한가지 방법대로 두번째 변수(JSON 코드)에 입력해 주세요. | ||
* JSON 코드 직접 입력 | * JSON 코드 직접 입력 | ||
:JSON 코드가 반환되는 이 모듈도 사용하실 수 있습니다. | :JSON 코드가 반환되는 이 모듈도 사용하실 수 있습니다. | ||
67번째 줄: | 67번째 줄: | ||
=== 새로 만들기 === | === 새로 만들기 === | ||
<nowiki>{{</nowiki>[[ | <nowiki>{{</nowiki>[[리버티게임:특수 함수#.23switch|#switch]]:<nowiki>}}</nowiki>문법과 비슷하게 JSON 데이터를 새로 만들 수 있습니다. | ||
<pre>{{#invoke:JSON|new|(값1)|(변수a)=(값a)|...}}</pre> | <pre>{{#invoke:JSON|new|(값1)|(변수a)=(값a)|...}}</pre> | ||
88번째 줄: | 88번째 줄: | ||
}} | }} | ||
</pre> | </pre> | ||
< | <syntaxhighlight lang="json">{ | ||
"var2": 1234, | "var2": 1234, | ||
"var3": true, | "var3": true, | ||
"var1": "aaaa" | "var1": "aaaa" | ||
}</ | }</syntaxhighlight> | ||
어때요, 신기하지 않나요? 이 기능과 함께 switch에서 JSON으로 갈아타세요! | 어때요, 신기하지 않나요? 이 기능과 함께 switch에서 JSON으로 갈아타세요! | ||
다른 방법으로, 일반 문자열을 콤마(,) 등을 기준으로 나눠서 배열을 만들 수 있습니다. | |||
<pre>{{#invoke:JSON|spl|(문자열)|(구분자)}}</pre> | |||
구분자를 비우거나 입력하지 않으면 기본적으로 글자 하나하나씩 나눕니다. | |||
'''여기서 주의할 점은 구분자는 일반 문자열이 아니라 정규 표현식과 비슷한 패턴으로 입력해야 한다는 겁니다.''' [[mw:Extension:Scribunto/Lua_reference_manual/ko#Ustring_patterns|루아의 패턴 문법(영문)]]을 참고해서 입력해 주세요. | |||
=== 변수값 얻기 === | === 변수값 얻기 === | ||
107번째 줄: | 115번째 줄: | ||
=== 변수값 변경 === | === 변수값 변경 === | ||
{{#vardefine:value|{{ | {{#vardefine:value|{{rand|0|9}}}} | ||
{{#vardefine:bar|<choose><option>true</option><option>false</option></choose>}} | {{#vardefine:bar|<choose><option>true</option><option>false</option></choose>}} | ||
JSON 데이터에 있는 변수의 값을 변경하려면 다음과 같이 입력합니다: | JSON 데이터에 있는 변수의 값을 변경하려면 다음과 같이 입력합니다: | ||
116번째 줄: | 124번째 줄: | ||
<nowiki>{{#invoke:JSON|set|(JSON 코드)|var|</nowiki>{{#var:value}}<nowiki>}}</nowiki> | <nowiki>{{#invoke:JSON|set|(JSON 코드)|var|</nowiki>{{#var:value}}<nowiki>}}</nowiki> | ||
JSON 데이터에 없는 변수를 추가할때도 마찬가지로 똑같이 입력하시면 됩니다. | |||
변수의 값을 비워두거나 null로 설정하면 변수가 제거됩니다. | |||
=== 요소 추가 === | |||
배열에서 요소를 특정 위치에 추가하려면 ins를 사용하세요. 뒤의 요소들은 하나씩 인덱스가 밀려납니다. | |||
<pre> | |||
{{#invoke:JSON|ins|(JSON 코드)|(인덱스)|(값)}} | |||
</pre> | |||
=== 코드 합치기 === | === 코드 합치기 === | ||
두 JSON 코드를 합칩니다. new랑 궁합이 매우 좋습니다. | 두 JSON 코드를 합칩니다. | ||
객체를 합칠 때는 mer를 사용합니다. new랑 궁합이 매우 좋습니다. | |||
<pre>{{#invoke:JSON|mer|(JSON 코드1)|(JSON 코드2)|...}}</pre> | <pre>{{#invoke:JSON|mer|(JSON 코드1)|(JSON 코드2)|...}}</pre> | ||
만약 중복된 항목이 있으면 | 만약 중복된 항목이 있으면 뒤에 있는 코드의 값으로 설정됩니다. | ||
이를 응용하여 내용 수정에도 사용하실 수 있습니다. 만약 <code>var1</code>의 값을 <code>{{#var:value}}</code>로 바꾸고 <code>var2</code>의 값을 <code>{{#var:bar}}</code>로 바꾸려는 경우 다음과 같이 입력해 주세요. 다만 new는 값을 제거하는 데에는 이용하실 수 없으며 JSON 코드를 직접 입력하셔야 합니다. | 이를 응용하여 내용 수정에도 사용하실 수 있습니다. 만약 <code>var1</code>의 값을 <code>{{#var:value}}</code>로 바꾸고 <code>var2</code>의 값을 <code>{{#var:bar}}</code>로 바꾸려는 경우 다음과 같이 입력해 주세요. 다만 new는 값을 제거하는 데에는 이용하실 수 없으며 JSON 코드를 직접 입력하셔야 합니다. | ||
137번째 줄: | 146번째 줄: | ||
=== 변수 제거 === | === 변수 제거 === | ||
여러개의 변수를 일괄적으로 제거합니다. | 여러개의 변수를 일괄적으로 제거합니다. del은 단순히 변수값만 제거하며 rem은 변수값을 제거하고 그 뒤 요소의 순서를 당겨옵니다. del은 객체에, rem은 배열에 사용할 것을 권장합니다. | ||
<pre>{{#invoke:JSON|del|(JSON 코드)|(변수1)|(변수2)|...}}</pre> | <pre> | ||
{{#invoke:JSON|del|(JSON 코드)|(변수1)|(변수2)|...}} | |||
{{#invoke:JSON|rem|(JSON 코드)|(변수)}} | |||
</pre> | |||
=== 배열 크기 === | |||
배열의 요소 개수는 len을 통해 확인할 수 있습니다. | |||
<pre>{{#invoke:JSON|len|(JSON 코드)}}</pre> | |||
=== 타입 확인 === | |||
미디어위키의 특성 상 get으로 값을 불러올때는 타입을 구분하지 않고 모두 문자열로 간주됩니다. 만약 타입을 구분하는 것이 중요한 경우, typ를 통해 확인할 수 있습니다. | |||
나올 수 있는 타입은 다음과 같습니다: string, number, boolean, table, nil | |||
단독으로 사용할 경우, 객체나 배열에 포함된 요소 하나를 확인할 수 있으며 해당 요소의 키를 지정해야 합니다. | |||
<pre>{{#invoke:JSON|typ|(JSON 코드)|(키)}}</pre> | |||
cmd를 통해 조합한 경우, 이전 명령을 통해 불러온 값의 타입을 바로 확인할 수 있습니다. | |||
<pre> | |||
{{#invoke:JSON|cmd|(JSON 코드)| | |||
{{#invoke:JSON/cmd|get|(키)}} | |||
{{#invoke:JSON/cmd|typ}} | |||
}} | |||
</pre> | |||
=== 반복문 === | |||
객체나 배열의 각 요소를 반복할 수 있습니다. 반복문을 구현하는 세 함수는 결과를 어떻게 활용하는지에 따라서 나뉩니다. | |||
키와 값은 각각 <nowiki>{{{key}}}</nowiki>, <nowiki>{{{value}}}</nowiki> 매개변수를 통해 불러올 수 있으며, 다른 매개변수로 변경할 수 있습니다. | |||
<pre>{{#invoke:JSON|(함수)|(JSON 코드)|(nowiki로 감싼 틀 문법)|key=(키를 불러올 변수 이름)|value=(값을 불러올 변수 이름)}}</pre> | |||
각 요소마다 반복한 값을 순서대로 나열하려면 for를 사용하세요. | |||
각 요소마다 값을 일괄적으로 변경하려면 map을 이용하세요. | |||
각 요소를 누적해서 하나의 값을 출력하려면 red를 이용하세요. 이전에 출력한 값은 <nowiki>{{{prev}}}</nowiki> 매개변수로 불러올 수 있으며, 마찬가지로 invoke 함수에 prev 매개변수를 지정해 다른 이름으로 바꿀 수 있습니다. | |||
=== 배열을 문자열로 합치기 === | |||
con을 통해 배열의 각 요소 사이에 특정 구분자로 구분시켜서 하나의 문자열로 만들 수 있습니다. 시작 인덱스와 및 끝 인덱스를 지정해서 일부만 합칠 수 있으며, 시작 인덱스와 끝 인덱스에 해당되는 요소를 포함합니다. | |||
<pre>{{#invoke:JSON|con|(JSON 코드)|(구분자)|(시작 인덱스)|(끝 인덱스)}}</pre> | |||
=== 포맷팅 === | |||
JSON 코드를 화면에 표시하려는 경우, JSON 코드를 보기 좋게 포맷팅할 수 있습니다. | |||
<pre> | |||
{{#invoke:JSON|pty|(JSON 코드)}} | |||
</pre> | |||
=== 작업 조합 === | === 작업 조합 === | ||
만약 여러 작업을 동시에 하고 싶다면 cmd명령을 사용해 CGI2 방식으로 명령어를 입력하거나, [[모듈:JSON/cmd]]를 사용하실 수 있습니다. | 만약 여러 작업을 동시에 하고 싶다면 cmd명령을 사용해 CGI2 방식으로 명령어를 입력하거나, [[모듈:JSON/cmd]]를 사용하실 수 있습니다. [[모듈:JSON/cmd]]는 JSON 코드 부분을 생략합니다. | ||
<nowiki>{{#invoke:JSON|cmd | <nowiki>{{#invoke:JSON|cmd | ||
|{{#invoke:JSON|new|var=</nowiki><choose><option>true</option><option>false</option></choose><nowiki>}} | |{{#invoke:JSON|new|var=</nowiki><choose><option>true</option><option>false</option></choose><nowiki>}} | ||
|{{#invoke:JSON/cmd|mer| | |{{#invoke:JSON/cmd|mer| | ||
{{#invoke:JSON|new | {{#invoke:JSON|new | ||
|var1=</nowiki>{{ | |var1=</nowiki>{{rand|0|9}}<nowiki> | ||
|var2={{#invoke:JSON|new|ㅁㄴㅇㄹ}} | |var2={{#invoke:JSON|new|ㅁㄴㅇㄹ}} | ||
}} | }} | ||
}} | }} | ||
{{#invoke:JSON/cmd|del|var}} | {{#invoke:JSON/cmd|del|var}} | ||
{{#invoke:JSON/cmd|get|var</nowiki>{{ | {{#invoke:JSON/cmd|get|var</nowiki>{{rand|1|2}}<nowiki>}} | ||
}} | }} | ||
</nowiki> | </nowiki> | ||
== [[도보시오]] == | == [[도보시오]] == | ||
* [[리버티게임:JSON]] | |||
* [[틀:JSON]] | * [[틀:JSON]] |
2024년 10월 4일 (금) 12:20 기준 최신판
JSON 데이터를 읽어들여 값을 반환하거나, 데이터를 수정합니다.
주의사항[원본 편집]
이 모듈은 null
을 없는 값으로 간주합니다. 따라서 null 값을 보존하려면 이 모듈을 사용하지 말것을 권장합니다.
사용전:
{"var1": true, "var2": null, "var3": false}
사용후:
{"var1": true, "var3": false}
루아에서는 배열의 순서가 1부터 시작합니다. 이 점 유의해 주세요.
["aaa", "bbb", "ccc", "ddd"]
JS | 값 | Lua |
---|---|---|
0 | aaa | 1 |
1 | bbb | 2 |
2 | ccc | 3 |
3 | ddd | 4 |
객체의 경우 속성이 표시되는 순서가 바뀔 수 있습니다. 단, 배열은 해당되지 않으며 객체의 순서가 바뀌어도 속성명은 변하지 않으므로 변수를 호출할 때에 큰 문제는 없습니다.
사용전:
{"var1": "aaaa", "var2": 1234, "var3": true}
[1, 3, 5, 9]
사용후:
{"var2":1234,"var3":true,"var1":"aaaa"}
[1,3,5,9]
사용법[원본 편집]
변수[원본 편집]
객체를 사용한다면 속성명을 그대로 입력하시면 됩니다.
JSON에서는 문자열, 숫자, 부울, 배열, 객체, null을 다루며, 이 틀에서 값을 입력할 때 기본적으로는 문자열으로 처리되지만, JSON 값의 형식에 맞춰서 입력한다면 자동으로 타입이 적용됩니다. 만약 강제적으로 문자열을 적용하고 싶다면 ""
로 이스케이프하실 수 있습니다. 만약, 이스케이프된 문자열을 ""로 묶고 싶으시다면 그 안에
""를 더 넣으실 수 있습니다. (예시: "true"
→true
, ""123""
→"123"
)
칸을 비우시면 없는 값으로 간주되어 내용이 삭제됩니다. 만약, 빈 문자열을 사용하고 싶으시다면 ""
을 입력하세요. 칸을 비우기 곤란하시다면 null
을 사용하여 내용을 지우실 수 있습니다. null 역시 마찬가지로 "null"
과 같이 이스케이프가 가능합니다.
JSON 코드[원본 편집]
조작할 JSON 데이터를 특정합니다. 상황에 따라 다음 중 한가지 방법대로 두번째 변수(JSON 코드)에 입력해 주세요.
- JSON 코드 직접 입력
- JSON 코드가 반환되는 이 모듈도 사용하실 수 있습니다.
- JSON 문서 불러오기
- JSON 문서를 불러와서 입력하시려면 다음과 같이 틀의 형태로 입력해 주세요.
{{사용자:홍길동/데이터.json}} {{:한게임/DB}}
- 빈 JSON 코드
- 비어있는 JSON 코드를 사용하시려면
{}
나[]
만 입력해 주세요.
새로 만들기[원본 편집]
{{#switch:}}문법과 비슷하게 JSON 데이터를 새로 만들 수 있습니다.
{{#invoke:JSON|new|(값1)|(변수a)=(값a)|...}}
변수를 지정하지 않은 경우 변수는 틀과 같이 순서로 지정이 되며, 배열을 만들고자 할 경우 변수 없이 값만 입력하시면 됩니다.
이 기능은 앞서 말했다시피 #switch 문법과 유사하기 때문에 호환이 될 수 있습니다. 앞부분의 {{#switch:{{{1}}}
부분을 한번 {{풀기:#invoke:JSON|new
로 변경해 보세요. switch가 JSON으로 마법같이 변신할겁니다.
{{#switch:{{{1}}} |var1=aaaa |var2=1234 |var3=true }}
{{풀기:#invoke:JSON|new |var1=aaaa |var2=1234 |var3=true }}
{
"var2": 1234,
"var3": true,
"var1": "aaaa"
}
어때요, 신기하지 않나요? 이 기능과 함께 switch에서 JSON으로 갈아타세요!
다른 방법으로, 일반 문자열을 콤마(,) 등을 기준으로 나눠서 배열을 만들 수 있습니다.
{{#invoke:JSON|spl|(문자열)|(구분자)}}
구분자를 비우거나 입력하지 않으면 기본적으로 글자 하나하나씩 나눕니다.
여기서 주의할 점은 구분자는 일반 문자열이 아니라 정규 표현식과 비슷한 패턴으로 입력해야 한다는 겁니다. 루아의 패턴 문법(영문)을 참고해서 입력해 주세요.
변수값 얻기[원본 편집]
JSON 데이터에 있는 변수의 값을 얻으려면 다음과 같이 입력합니다:
{{#invoke:JSON|get|(JSON 코드)|(변수)}}
위와 같이 입력하시면 해당 변수의 값만 그대로 나오며, 값이 없는 경우 기본값이 나옵니다.
예를 들어, var
변수의 값을 얻는다면 이렇게 입력하세요:
{{#invoke:JSON|get|(JSON 코드)|var}}
{{JSON}}을 이용하면 더 간단히 입력하실 수 있습니다. 자세한 내용은 해당 문서를 확인해 주세요.
변수값 변경[원본 편집]
JSON 데이터에 있는 변수의 값을 변경하려면 다음과 같이 입력합니다:
{{#invoke:JSON|set|(JSON 코드)|(변수)|(값)}}
위와 같이 입력하시면 해당 변수의 값이 변경된 JSON 코드가 반환됩니다.
예를 들어, var
변수의 값을 0
로 변경할 경우 이렇게 입력하세요:
{{#invoke:JSON|set|(JSON 코드)|var|0}}
JSON 데이터에 없는 변수를 추가할때도 마찬가지로 똑같이 입력하시면 됩니다.
변수의 값을 비워두거나 null로 설정하면 변수가 제거됩니다.
요소 추가[원본 편집]
배열에서 요소를 특정 위치에 추가하려면 ins를 사용하세요. 뒤의 요소들은 하나씩 인덱스가 밀려납니다.
{{#invoke:JSON|ins|(JSON 코드)|(인덱스)|(값)}}
코드 합치기[원본 편집]
두 JSON 코드를 합칩니다.
객체를 합칠 때는 mer를 사용합니다. new랑 궁합이 매우 좋습니다.
{{#invoke:JSON|mer|(JSON 코드1)|(JSON 코드2)|...}}
만약 중복된 항목이 있으면 뒤에 있는 코드의 값으로 설정됩니다.
이를 응용하여 내용 수정에도 사용하실 수 있습니다. 만약 var1
의 값을 0
로 바꾸고 var2
의 값을 false
로 바꾸려는 경우 다음과 같이 입력해 주세요. 다만 new는 값을 제거하는 데에는 이용하실 수 없으며 JSON 코드를 직접 입력하셔야 합니다.
{{#invoke:JSON|mer|(JSON 코드)|{{#invoke:JSON|new|var1=0|var2=false}}}}
변수 제거[원본 편집]
여러개의 변수를 일괄적으로 제거합니다. del은 단순히 변수값만 제거하며 rem은 변수값을 제거하고 그 뒤 요소의 순서를 당겨옵니다. del은 객체에, rem은 배열에 사용할 것을 권장합니다.
{{#invoke:JSON|del|(JSON 코드)|(변수1)|(변수2)|...}} {{#invoke:JSON|rem|(JSON 코드)|(변수)}}
배열 크기[원본 편집]
배열의 요소 개수는 len을 통해 확인할 수 있습니다.
{{#invoke:JSON|len|(JSON 코드)}}
타입 확인[원본 편집]
미디어위키의 특성 상 get으로 값을 불러올때는 타입을 구분하지 않고 모두 문자열로 간주됩니다. 만약 타입을 구분하는 것이 중요한 경우, typ를 통해 확인할 수 있습니다.
나올 수 있는 타입은 다음과 같습니다: string, number, boolean, table, nil
단독으로 사용할 경우, 객체나 배열에 포함된 요소 하나를 확인할 수 있으며 해당 요소의 키를 지정해야 합니다.
{{#invoke:JSON|typ|(JSON 코드)|(키)}}
cmd를 통해 조합한 경우, 이전 명령을 통해 불러온 값의 타입을 바로 확인할 수 있습니다.
{{#invoke:JSON|cmd|(JSON 코드)| {{#invoke:JSON/cmd|get|(키)}} {{#invoke:JSON/cmd|typ}} }}
반복문[원본 편집]
객체나 배열의 각 요소를 반복할 수 있습니다. 반복문을 구현하는 세 함수는 결과를 어떻게 활용하는지에 따라서 나뉩니다.
키와 값은 각각 {{{key}}}, {{{value}}} 매개변수를 통해 불러올 수 있으며, 다른 매개변수로 변경할 수 있습니다.
{{#invoke:JSON|(함수)|(JSON 코드)|(nowiki로 감싼 틀 문법)|key=(키를 불러올 변수 이름)|value=(값을 불러올 변수 이름)}}
각 요소마다 반복한 값을 순서대로 나열하려면 for를 사용하세요.
각 요소마다 값을 일괄적으로 변경하려면 map을 이용하세요.
각 요소를 누적해서 하나의 값을 출력하려면 red를 이용하세요. 이전에 출력한 값은 {{{prev}}} 매개변수로 불러올 수 있으며, 마찬가지로 invoke 함수에 prev 매개변수를 지정해 다른 이름으로 바꿀 수 있습니다.
배열을 문자열로 합치기[원본 편집]
con을 통해 배열의 각 요소 사이에 특정 구분자로 구분시켜서 하나의 문자열로 만들 수 있습니다. 시작 인덱스와 및 끝 인덱스를 지정해서 일부만 합칠 수 있으며, 시작 인덱스와 끝 인덱스에 해당되는 요소를 포함합니다.
{{#invoke:JSON|con|(JSON 코드)|(구분자)|(시작 인덱스)|(끝 인덱스)}}
포맷팅[원본 편집]
JSON 코드를 화면에 표시하려는 경우, JSON 코드를 보기 좋게 포맷팅할 수 있습니다.
{{#invoke:JSON|pty|(JSON 코드)}}
작업 조합[원본 편집]
만약 여러 작업을 동시에 하고 싶다면 cmd명령을 사용해 CGI2 방식으로 명령어를 입력하거나, 모듈:JSON/cmd를 사용하실 수 있습니다. 모듈:JSON/cmd는 JSON 코드 부분을 생략합니다.
{{#invoke:JSON|cmd |{{#invoke:JSON|new|var=false}} |{{#invoke:JSON/cmd|mer| {{#invoke:JSON|new |var1=9 |var2={{#invoke:JSON|new|ㅁㄴㅇㄹ}} }} }} {{#invoke:JSON/cmd|del|var}} {{#invoke:JSON/cmd|get|var1}} }}