BIS fnc findNestedElement: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
m (added note about findIf)
m (Some wiki formatting)
 
(27 intermediate revisions by 2 users not shown)
Line 1: Line 1:
{{Function|Comments=
{{RV|type=function
____________________________________________________________________________________________


| arma2 |Game name=
|game1= arma2
|version1= 1.00


|1.00|Game version=
|game2= arma2oa
|version2= 1.50


|gr1= Arrays |GROUP1=
|game3= tkoh
____________________________________________________________________________________________
|version3= 1.00


| Function to find item in nested arrays and return a path to the first match.
|game4= arma3
{{Feature_arma3|In some cases [[findIf]] might be the better way of finding a nested element. It is a lot faster!}}|Description=
|version4= 0.50
____________________________________________________________________________________________


| [array, query] call [[BIS_fnc_findNestedElement]] |Syntax=
|gr1= Arrays


|p1= array: [[Array]] - array to explore |Parameter 1=
|descr= Function to find item in nested arrays and return a path to the first match.
{{Feature|arma3|In some cases [[findIf]] might be the better way of finding a nested element. It is a lot faster!}}


|p2= query: [[Anything]] - wanted item |Parameter 2=
|s1= [array, query] call [[BIS_fnc_findNestedElement]]


| [[Array]] of [[Number|Numbers]] - path to the first occurence of ''query'' |Return value=
|p1= array: [[Array]] - array to explore
____________________________________________________________________________________________


|x1= <code>_array = [[1, 2], [3, 4]];
|p2= query: [[Anything]] - wanted item
_path = [_array, 3] [[call]] [[BIS_fnc_findNestedElement]]; {{codecomment|// expected result: [1, 0]}}
{{codecomment|// ((_array [[select]] '''1''') [[select]] '''0''') {{=}}{{=}} 3}}</code> |Example 1=
____________________________________________________________________________________________


| [[BIS_fnc_findAllNestedElements]], [[BIS_fnc_removeNestedElement]], [[BIS_fnc_returnNestedElement]], [[BIS_fnc_setNestedElement]] |See also=
|r1= [[Array]] of [[Number]]s - path to the first occurence of ''query''
}}


<h3 style="display:none">Notes</h3>
|x1= <sqf>
<dl class="command_description">
private _array = [[1, 2], [3, 4]];
<!-- Note Section BEGIN -->
_path = [_array, 3] call BIS_fnc_findNestedElement; // expected result: [1, 0]
// ((_array select 1) select 0) == 3
</sqf>


<!-- Note Section END -->
|seealso= [[BIS_fnc_findAllNestedElements]] [[BIS_fnc_removeNestedElement]] [[BIS_fnc_returnNestedElement]] [[BIS_fnc_setNestedElement]]
</dl>
}}
 
<h3 style="display:none">Bottom Section</h3>
[[Category:Functions|{{uc:findNestedElement}}]]
 
[[Category:{{Name|arma2}}: Functions|{{uc:findNestedElement}}]]
[[Category:{{Name|arma2oa}}: Functions|{{uc:findNestedElement}}]]
[[Category:{{Name|tkoh}}: Functions|{{uc:findNestedElement}}]]
[[Category:{{Name|arma3}}: Functions|{{uc:findNestedElement}}]]

Latest revision as of 11:17, 13 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