BIS fnc addToPairs: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
m (Text replacement - " (\|[pr][0-9]+ *= *[^-]+) *- *A([a-z])" to " $1 - a$2")
m (Text replacement - "(\|[pr][0-9]+ *= *[^- ]*) *- *K([a-z ])" to "$1 - k$2")
Line 19: Line 19:
|p1= array: [[Array]] - array to search through
|p1= array: [[Array]] - array to search through


|p2= key: [[String]] - Key to search for
|p2= key: [[String]] - key to search for


|p3= value: [[Number]] - (Optional, default [[nil]]) default return value if no match was found
|p3= value: [[Number]] - (Optional, default [[nil]]) default return value if no match was found

Revision as of 15:37, 8 November 2023

Hover & click on the images for description

Description

Description:
Adds given value to pair array, stored under unique key.

If value is found:
a) both values are scalars: values are added and stored as a single scalar
b) one or both values are array: values are added and stored as a single array
c) anything else: an array is created and both values are stored there

Function by default modifies the input array. This can be overrriden by setting '_copyArray' param to true.
Execution:
call
Groups:
Arrays

Syntax

Syntax:
[array, key, value, copyArray] call BIS_fnc_addToPairs
Parameters:
array: Array - array to search through
key: String - key to search for
value: Number - (Optional, default nil) default return value if no match was found
copyArray: Boolean - (Optional, default false) true to copy the array and return it, false to modify the original array
Return Value:
Array - Resulting modified array or a copy

Examples

Example 1:
[[["apple",3],["pear",2]],"pear",10] call BIS_fnc_addToPairs; // Returns [["apple",3],["pear",12]]
Example 2:
[[["apple",3],["pear",2]],"apple",-2] call BIS_fnc_addToPairs; // Returns [["apple",1],["pear",2]]
Example 3:
[[["greetings","Hello!"],["rudewords",""]],"greetings","Hi!"] call BIS_fnc_addToPairs; // Returns [["greetings",["Hello!","Hi!"]],["rudewords",""]]

Additional Information

See also:
find findIf BIS_fnc_findInPairs BIS_fnc_getFromPairs BIS_fnc_removeFromPairs BIS_fnc_setToPairs

Notes

Report bugs on the Feedback Tracker and/or discuss them on the Arma Discord or on the Forums.
Only post proven facts here! Add Note