Changes

Jump to navigation Jump to search
392 bytes added ,  18:40, 17 February 2020
no edit summary
=Conventions=
All functions and errors in this module are assigned to the <code><nowiki>http://www.w3.org/2005/xpath-functions/array</nowiki></code> namespace, which is statically bound to the {{Code|array}} prefix.<br/>
=Functions=
| '''Examples'''
|
* <code>array:appendsubarray(['member1'"a", "b", "c"], 'member2'2)</code> returns the array {{Code|["member1b", "member2c"]}}.
|}
| '''Examples'''
|The following query returns the array {{Code|[2, 3, 4, 5, 6]}}:
 <pre classsyntaxhighlight lang="brush:xquery">
array:for-each(
array { 1 to 5 },
function($i) { $i + 1}
)
</presyntaxhighlight>
|}
| '''Examples'''
|The following query returns the array {{Code|[0, 1, 3]}}:
<pre classsyntaxhighlight lang="brush:xquery">
array:filter(
array { 0, 1, -2, 3, -4 },
function($i) { $i > 0 }
)
</presyntaxhighlight>
|}
| '''Examples'''
|The following query returns {{Code|55}} (the sum of the integers 1 to 10):
<pre classsyntaxhighlight lang="brush:xquery">
array:fold-left(
array { 1 to 10 },
function($a, $b) { $a + $b }
)
</presyntaxhighlight>
|}
| '''Examples'''
|The following query is equivalent to the expression <code>array:reverse(array { 1 to 5 })</code>:
<pre classsyntaxhighlight lang="brush:xquery">
array {
array:fold-right(
)
}
</presyntaxhighlight>
|}
| '''Examples'''
|The following query returns the array {{Code|[5, 7, 9]}}:
<pre classsyntaxhighlight lang="brush:xquery">
array:for-each-pair(
array { 1 to 3 },
function($a + $b) { $a + $b }
)
</presyntaxhighlight>
|}
{| width='100%'
| width='120' | '''Signatures'''
|{{Func|array:sort|$array as array(*)|array(*)}}<br/>{{Func|array:sort|$array as array(*), $collation as xs:string?|array(*)}}<br/>{{Func|array:sort|$array as array(*), $collation as xs:string?, $key as function(item()*) as xs:anyAtomicType*|array(*)}}<br/>
|-
| '''Summary'''
| Returns a new array with sorted {{Code|$array}} members, using an optional {{Code|$collation}}. If a sort {{Code|$key}} function is givensupplied, it will be applied on all array members. The items of the resulting values will be sorted using the semantics of the {{Code|lt}} expression.
|-
| '''Examples'''
|
* <code>array:sort(array { reverse(1 to 3) })</code> returns <code>[1, 2, 3]</code>
* <code>array:sort([3, -2, 1], (), abs#1)</code> returns <code>[1, -2, 3]</code>* <code>array:sort([1,2,3], (), function($x) { -$x })</code> returns <code>[3, 2, 1]</code>* <code>array:sort((1, 'a'))</code> returns an error (strings and integers cannot be compared)
|}
|}
=Changelog=
;Version 8.6
* Updated: [[#array:put|array:put]] collation argument was inserted between first and second argument.
=Changelog=;Version 8.5* Added: [[#array:put|array:put]]
;Version 8.4
administrator, Bureaucrats, editor, Interface administrators, reviewer, Administrators
401

edits

Navigation menu