json.unique: Difference between revisions
Jump to navigation
Jump to search
(New page: {{MacroFunction |name=json.unique |version=1.3b53 |description= Returns a JSON Array with each value that occurs in the source JSON Array occurring only once. The relative order o...) |
No edit summary |
||
(5 intermediate revisions by 4 users not shown) | |||
Line 3: | Line 3: | ||
|version=1.3b53 | |version=1.3b53 | ||
|description= | |description= | ||
Returns a [[JSON Array]] with each value that occurs in the source [[JSON Array]] occurring only once. | Returns a [[JSON Array]] with each value that occurs in the source [[JSON Array]] occurring only once. The relative order of the values in the array may not be preserved. | ||
The relative order of the values in the array may not be preserved. | |||
|usage= | |usage= | ||
< | <syntaxhighlight lang="mtmacro" line> | ||
json.unique(array) | |||
</ | </syntaxhighlight> | ||
'''Parameters''' | '''Parameters''' | ||
{{param|array|The [[JSON Array]] to return only unique values from.}} | |||
| | |example= | ||
Lets say you have a [[JSON Array]] that contains the following [[Token]] names | Lets say you have a [[JSON Array]] that contains the following [[Token]] names: {{code|["Hero", "Dragon"]}}, and you use {{code|{{func|getPCNames}}}} to return the names of | ||
{{code|["Hero", "Dragon"]}} and you use {{code| | the [[Introduction_to_Tokens#Token_Type|PC Token]]s, you could use the following code to generate a [[JSON Array]] that contains the values in both [[JSON Array]]s with no value present more than once. | ||
the [[PC Token]]s, you could use the following code to generate a [[JSON Array]] that contains the values in both [[JSON | <syntaxhighlight lang="mtmacro" line> | ||
< | |||
[h: names1 = '["Hero", "Dragon"]'] | [h: names1 = '["Hero", "Dragon"]'] | ||
[h: names2 = getNPCNames()] | [h: names2 = getNPCNames()] | ||
[h: names = json.merge(names1, names2)] | [h: names = json.merge(names1, names2)] | ||
[r: json.unique(names)] | [r: json.unique(names)] | ||
</ | </syntaxhighlight> | ||
If {{code| | If {{code|{{func|getPCNames}}}} returns {{code|["Hero", "Sidekick", "Policeman"]}} then the | ||
result of the above code will be | result of the above code will be {{code|["Policeman","Sidekick","Hero","Dragon"]}} | ||
{{code|["Policeman","Sidekick","Hero","Dragon"]}} | |||
While the above example demonstrates the output of {{code|{{func|json.unique}}}} if you want to merge | |||
two or more arrays and get the unique values in one step you can use the {{code|{{func|json.union}}}} | |||
function. | |||
|also= | |||
{{func|json.merge}} | |||
{{func|json.union}} | |||
}} | }} | ||
[[Category:JSON Function]] | [[Category:JSON Function]] |
Latest revision as of 17:39, 15 March 2023
json.unique() Function
• Introduced in version 1.3b53
Returns a JSON Array with each value that occurs in the source JSON Array occurring only once. The relative order of the values in the array may not be preserved.
Usage
json.unique(array)
Parameters
array
- The JSON Array to return only unique values from.
Example
Lets say you have a JSON Array that contains the following Token names:
["Hero", "Dragon"]
, and you use getPCNames()
to return the names of
the PC Tokens, you could use the following code to generate a JSON Array that contains the values in both JSON Arrays with no value present more than once.
[h: names1 = '["Hero", "Dragon"]']
[h: names2 = getNPCNames()]
[h: names = json.merge(names1, names2)]
[r: json.unique(names)]
If getPCNames()
returns ["Hero", "Sidekick", "Policeman"]
then the
result of the above code will be ["Policeman","Sidekick","Hero","Dragon"]
While the above example demonstrates the output of json.unique()
if you want to merge
two or more arrays and get the unique values in one step you can use the json.union()