pushBack: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
m (Text replacement - " <dd class="notedate">" to " <dt><dt> <dd class="notedate">")
m (Text replacement - "<!-- Note Section [A-Z]+ --> " to "")
Line 28: Line 28:


<dl class="command_description">
<dl class="command_description">
<!-- Note Section BEGIN -->
<dd class="notedate">Posted on Aug 1, 2014 - 21:15</dd>
<dd class="notedate">Posted on Aug 1, 2014 - 21:15</dd>
<dt class="note">[[User:ffur2007slx2_5|ffur2007slx2_5]]<dd class="note">
<dt class="note">[[User:ffur2007slx2_5|ffur2007slx2_5]]<dd class="note">
Line 35: Line 34:
_array [[pushBack]] 4; //same as [_array, 4] [[call]] [[BIS_fnc_arrayPush]];
_array [[pushBack]] 4; //same as [_array, 4] [[call]] [[BIS_fnc_arrayPush]];
</code>
</code>
<!-- Note Section END -->
</dl>
</dl>



Revision as of 00:42, 6 April 2021

Hover & click on the images for description

Description

Description:
Description needed
Groups:
Arrays

Syntax

Syntax:
Syntax needed
Parameters:
array: Array
element: Anything
Return Value:
Return value needed

Examples

Example 1:
_arr = [1,2,3]; _arr pushBack 4; hint str _arr; //[1,2,3,4]
Example 2:
_arr = [1,[2,4],3]; (_arr select 1) pushBack [5,6]; hint str _arr //[1,[2,4,[5,6]],3]

Additional Information

See also:
pushBackUniqueselectsetresizereversecountfindinforEachdeleteAtdeleteRangeappendsortarrayIntersectapplyBIS_fnc_arrayPushStackBIS_fnc_arrayPush

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
Posted on Aug 1, 2014 - 21:15
ffur2007slx2_5
(A3 1.26) It is recommended to use pushBack instead of BIS_fnc_arrayPush. _array = [1,2,3]; _array pushBack 4; //same as [_array, 4] call BIS_fnc_arrayPush;
Posted on August 23, 2014 - 21:35 (UTC)
Skaronator
It's highly recommended to use the new pushBack command, up to 43% faster than set and up to 11843% faster a plus b!
Posted on November 26, 2014 - 18:25 (UTC)
DreadedEntity
pushBack does not support nil while set and a plus b do. For example: _array = []; for "_i" from 0 to 3 do { _array pushBack nil; }; hint str _array; //hint is []
Posted on May 21, 2015 - 10:52 (UTC)
Killzone Kid
Array "push" implementation using pushBack, alternative to BIS_fnc_arrayPush KK_fnc_push = { _this select 0 pushBack (_this select 1); _this select 0 }; // Example arr = [1,2,3]; [arr, 4] call KK_fnc_push; //both arr and return of function are now [1,2,3,4]
Posted on October 5, 2016 - 02:19 (UTC)
OOKexOo
Note that pushBack does not create a new object.
Therefore, if you edit an object that was pushed back to an array, it also affects the object in the array. e.g.
_first_squence = [1,2,3]; _second_squence = [5,4]; _first_squence pushBack _second_squence; systemChat str _first_squence // prints [1,2,3,[5,4]]] reverse _second_squence; systemChat str _first_squence // prints [1,2,3,[4,5]]]
If you pushBack an array for instance, you can just copy it to generate a new object. e.g.
_first_squence pushBack +_second_squence;