모듈:JSON/설명문서: 두 판 사이의 차이

리버티게임, 모두가 만들어가는 자유로운 게임
백괴게임>Gustmd7410
백괴게임>Gustmd7410
12번째 줄: 12번째 줄:
JSON 코드는 다음과 같은 다양한 상황에서 입력이 가능합니다. 아래와 같은 내용을 두번째 변수(JSON 코드)에 입력해 주세요.
JSON 코드는 다음과 같은 다양한 상황에서 입력이 가능합니다. 아래와 같은 내용을 두번째 변수(JSON 코드)에 입력해 주세요.
* JSON 코드 직접 입력
* JSON 코드 직접 입력
:JSON 코드가 반환되는 이 모듈도 사용하실 수 있습니다.
* JSON 문서 불러오기
* JSON 문서 불러오기
:JSON 문서를 불러와서 입력하시려면 다음과 같이 틀의 형태로 입력해 주세요.
:JSON 문서를 불러와서 입력하시려면 다음과 같이 틀의 형태로 입력해 주세요.
18번째 줄: 19번째 줄:
* 빈 JSON 코드
* 빈 JSON 코드
:비어있는 JSON 코드를 사용하시려면 <code>{}</code>나 <code>[]</code>만 입력해 주세요.
:비어있는 JSON 코드를 사용하시려면 <code>{}</code>나 <code>[]</code>만 입력해 주세요.
== 새로 만들기 ==
<nowiki>{{</nowiki>[[도움말:게임 만들기#.23switch|#switch]]:<nowiki>}}</nowiki>문법과 비슷하게 JSON 데이터를 새로 만들 수 있습니다.
<pre>{{#invoke:JSON|new|(값)|(변수)=(값a)|...}}</pre>
변수를 지정하지 않은 경우 변수는 틀과 같이 순서로 지정이 되며, 배열을 만들고자 할 경우 변수 없이 값만 입력하시면 됩니다.
이 기능은 앞서 말했다시피 #switch 문법과 유사하기 때문에 호환이 될 수 있습니다. 앞부분의 <code><nowiki>{{#switch:{{{1}}}</nowiki></code>부분을 한번 <code><nowiki>{{풀기:#invoke:JSON|new</nowiki></code>로 변경해 보세요. switch가 JSON으로 마법같이 변신할겁니다. 이 기능과 함께 switch에서 JSON으로 갈아타세요!


=== 변수값 얻기 ===
=== 변수값 얻기 ===

2018년 6월 28일 (목) 23:39 판

JSON 데이터를 읽어들여 값을 반환하거나, 데이터를 수정합니다.

사용법

변수

객체를 사용한다면 속성명을 그대로 입력하시면 됩니다.

배열의 경우 Lua를 사용하므로 순서는 1부터 시작한다는 것을 유의해 주세요.

이 모듈은 null을 처리할 수 없으며 없는 값으로 간주됩니다. 따라서 null을 사용하는 데이터에는 이 모듈을 사용하실 수 없습니다.

JSON 코드

JSON 코드는 다음과 같은 다양한 상황에서 입력이 가능합니다. 아래와 같은 내용을 두번째 변수(JSON 코드)에 입력해 주세요.

  • JSON 코드 직접 입력
JSON 코드가 반환되는 이 모듈도 사용하실 수 있습니다.
  • JSON 문서 불러오기
JSON 문서를 불러와서 입력하시려면 다음과 같이 틀의 형태로 입력해 주세요.
{{사용자:홍길동/데이터.json}}
{{:한게임/DB}}
  • 빈 JSON 코드
비어있는 JSON 코드를 사용하시려면 {}[]만 입력해 주세요.

새로 만들기

{{#switch:}}문법과 비슷하게 JSON 데이터를 새로 만들 수 있습니다.

{{#invoke:JSON|new|(값)|(변수)=(값a)|...}}

변수를 지정하지 않은 경우 변수는 틀과 같이 순서로 지정이 되며, 배열을 만들고자 할 경우 변수 없이 값만 입력하시면 됩니다.

이 기능은 앞서 말했다시피 #switch 문법과 유사하기 때문에 호환이 될 수 있습니다. 앞부분의 {{#switch:{{{1}}}부분을 한번 {{풀기:#invoke:JSON|new로 변경해 보세요. switch가 JSON으로 마법같이 변신할겁니다. 이 기능과 함께 switch에서 JSON으로 갈아타세요!

변수값 얻기

JSON 데이터에 있는 변수의 값을 얻으려면 다음과 같이 입력합니다:

{{#invoke:JSON|get|(JSON 코드)|(변수)|(기본값)}}

위와 같이 입력하시면 해당 변수의 값만 그대로 나오며, 값이 없는 경우 기본값이 나옵니다.

예를 들어, var 변수의 값을 얻는다면 이렇게 입력하세요:

{{#invoke:JSON|get|(JSON 코드)|var}}

{{JSON}}을 이용하면 더 간단히 입력하실 수 있습니다. 자세한 내용은 해당 문서를 확인해 주세요.

변수값 변경

JSON 데이터에 있는 변수의 값을 변경하려면 다음과 같이 입력합니다:

{{#invoke:JSON|set|(JSON 코드)|(변수)|(값)}}

위와 같이 입력하시면 해당 변수의 값이 변경된 JSON 코드가 반환됩니다.

예를 들어, var 변수의 값을 {{#rand:0|9}}로 변경할 경우 이렇게 입력하세요:

{{#invoke:JSON|set|(JSON 코드)|var|{{#rand:0|9}}}}
  • 변수 추가
JSON 데이터에 있는 변수를 추가하려면 변수값을 변경할 때와 같이 입력하시면 됩니다.
  • 변수 제거
JSON 데이터에 있는 변수를 제거하려면 다음과 같이 변수값을 변경할 때의 값을 비워두시면 됩니다.
{{#invoke:JSON|set|(JSON 코드)|(변수)|}}
위와 같이 입력하시면 입력한 JSON 코드에서 해당 변수가 제거된 값이 나옵니다.
예를 들어, var 변수를 제거하려면 이렇게 입력하세요:
{{#invoke:JSON|set|(JSON 코드)|var|}}

작업 조합

만약 여러 작업을 동시에 하고 싶다면 두번째 변수에 이 틀을 다시 넣을 수 있습니다. 이런식으로 말이지요:

{{#invoke:JSON|get|
{{#invoke:JSON|set|
{{#invoke:JSON|set|
{{#invoke:JSON|set|
{"var":false}
|var}}
|var1|{{#rand:0|9}}}}
|var2|
{{#invoke:JSON|set|[]|1|ㅁㄴㅇㄹ}}
}}
|var{{#rand:1|2}}}}

도보시오