json.merge: Difference between revisions

From RPTools Wiki
Jump to navigation Jump to search
(New page: {{MacroFunction |name=json.merge |version=1.3b53 |description= Merges multiple JSON Arrays or JSON Objects. For JSON Arrays the value returned is that of all the JSON Array...)
 
m (Minor formatting changes, explained examples, added see also.)
Line 3: Line 3:
|version=1.3b53
|version=1.3b53
|description=
|description=
Merges multiple [[JSON Array]]s or [[JSON Object]]s. For [[JSON Array]]s the value returned is that of all the [[JSON Array]]s concatenated together. For [[JSON Object]]s the value returned is a [[JSON Object]] with all of the keys from all of the [[JSON Object]]s set, if eny key is specified in more
Merges multiple [[JSON Array]]s or [[JSON Object]]s. For [[JSON Array]]s the value returned is that of all the [[JSON Array]]s concatenated together. For [[JSON Object]]s the value returned is a [[JSON Object]] with all of the keys from all of the [[JSON Object]]s set, if eny key is specified in more than one [[JSON Object]] then the value for the last specified [[JSON Object]] is used.
than one [[JSON Object]] then the value for the last specified [[JSON Object]] is used.


|usage=
|usage=
<source lang="mtmacro" line>
<source lang="mtmacro" line>
[h: jarr = json.merge(jarr, jarr, ...)]
json.merge(array, array, ...)
</source>
</source>
<source lang="mtmacro" line>
<source lang="mtmacro" line>
[h: jarr = json.merge(jobj, jobj, ...)]
json.merge(object, object, ...)
</source>
</source>
'''Parameters'''
'''Parameters'''
* {{code|jarr}} - A [[JSON Array]].
{{param|array|A [[JSON Array]].}}
* {{code|jobj}} - A [[JSON Object]].
{{param|object|A [[JSON Object]].}}
 
 


|examples=
|examples=
Merge three [[JSON Array]]s:
<source lang="mtmacro" line>
<source lang="mtmacro" line>
[r: json.merge("[1,2]", "[3,4]", "[1,2]")]
[r: json.merge("[1,2]", "[3,4]", "[1,2]")]
</source>
</source>
Returns: {{code|[1,2,3,4,1,2]}}


Returns
Merge two [[JSON Object]]s with no matching keys:
[1,2,3,4,1,2]
 
<source lang="mtmacro" line>
<source lang="mtmacro" line>
[r: json.merge("{a:1, b:2}", "{c:10, d:7}")]
[r: json.merge("{a:1, b:2}", "{c:10, d:7}")]
</source>
</source>
Returns: {{code|{"a":1,"b":2,"c":10,"d":7} }}


Returns
Merge three [[JSON Object]]s with a matching key, {{code|a}}:
{"a":1,"b":2,"c":10,"d":7}
<source lang="mtmacro" line>
<source lang="mtmacro" line>
[r: json.merge("{a:1, b:2}", "{c:10, d:7}", "{a:11, z:7}")]
[r: json.merge("{a:1, b:2}", "{c:10, d:7}", "{a:11, z:7}")]
</source>
</source>
Returns: {{code|{"a":11,"b":2,"c":10,"d":7,"z":7} }}


Returns
|also=
{"a":11,"b":2,"c":10,"d":7,"z":7}
{{func|json.union}}
 


|changes=
|changes=
{{change|1.3b54| fixed bug which allows {{code|json.merge()}} to work correctly with [[JSON Object]]s.}}
{{change|1.3b54|Fixed bug which allows {{code|json.merge()}} to work correctly with [[JSON Object]]s.}}


}}
}}
[[Category:JSON Function]]
[[Category:JSON Function]]

Revision as of 19:39, 31 March 2009

json.merge() Function

Introduced in version 1.3b53
Merges multiple JSON Arrays or JSON Objects. For JSON Arrays the value returned is that of all the JSON Arrays concatenated together. For JSON Objects the value returned is a JSON Object with all of the keys from all of the JSON Objects set, if eny key is specified in more than one JSON Object then the value for the last specified JSON Object is used.

Usage

json.merge(array, array, ...)
json.merge(object, object, ...)

Parameters

Examples

Merge three JSON Arrays:
[r: json.merge("[1,2]", "[3,4]", "[1,2]")]

Returns: [1,2,3,4,1,2]

Merge two JSON Objects with no matching keys:

[r: json.merge("{a:1, b:2}", "{c:10, d:7}")]

Returns: {"a":1,"b":2,"c":10,"d":7}

Merge three JSON Objects with a matching key, a:

[r: json.merge("{a:1, b:2}", "{c:10, d:7}", "{a:11, z:7}")]
Returns: {"a":11,"b":2,"c":10,"d":7,"z":7}

See Also

Version Changes

  • 1.3b54 - Fixed bug which allows json.merge() to work correctly with JSON Objects.