BIS fnc findNestedElement: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
m (Text replacement - "<code>([^<]*)\[\[([a-zA-Z][a-zA-Z0-9_]+)\]\]([^<]*) *<\/code>" to "<code>$1$2$3</code>")
m (Text replacement - "<code>([^<]*)\[\[([a-zA-Z][a-zA-Z0-9_]+)\]\]([^<]*) *<\/code>" to "<code>$1$2$3</code>")
Line 27: Line 27:


|x1= <code>private _array = [[1, 2], [3, 4]];
|x1= <code>private _array = [[1, 2], [3, 4]];
_path = [_array, 3] call [[BIS_fnc_findNestedElement]]; {{cc|expected result: [1, 0]}}
_path = [_array, 3] call BIS_fnc_findNestedElement; {{cc|expected result: [1, 0]}}
{{cc|((_array [[select]] '''1''') [[select]] '''0''') {{=}}{{=}} 3}}</code>
{{cc|((_array [[select]] '''1''') [[select]] '''0''') {{=}}{{=}} 3}}</code>


|seealso= [[BIS_fnc_findAllNestedElements]] [[BIS_fnc_removeNestedElement]] [[BIS_fnc_returnNestedElement]] [[BIS_fnc_setNestedElement]]
|seealso= [[BIS_fnc_findAllNestedElements]] [[BIS_fnc_removeNestedElement]] [[BIS_fnc_returnNestedElement]] [[BIS_fnc_setNestedElement]]
}}
}}

Revision as of 22:37, 12 July 2022

Hover & click on the images for description

Description

Description:
Function to find item in nested arrays and return a path to the first match.
Arma 3
In some cases findIf might be the better way of finding a nested element. It is a lot faster!
Execution:
call
Groups:
Arrays

Syntax

Syntax:
[array, query] call BIS_fnc_findNestedElement
Parameters:
array: Array - array to explore
query: Anything - wanted item
Return Value:
Array of Numbers - path to the first occurence of query

Examples

Example 1:
private _array = [[1, 2], [3, 4]]; _path = [_array, 3] call BIS_fnc_findNestedElement; // expected result: [1, 0] // ((_array select 1) select 0) == 3

Additional Information

See also:
BIS_fnc_findAllNestedElements BIS_fnc_removeNestedElement BIS_fnc_returnNestedElement BIS_fnc_setNestedElement

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