pushBack: Difference between revisions
Jump to navigation
Jump to search
Lou Montana (talk | contribs) m (Text replacement - "_{10,} " to "") |
Lou Montana (talk | contribs) m (Text replacement - " *\| *([Cc]omments|COMMENTS|Game|[Gg]ame [Nn]ame|Game [Vv]ersion|Game Version \(number surrounded by NO SPACES\)|Multiplayer Arguments( \("local" or "global"\))?|Effects|Multiplayer Effects( \("local" or "global"\))?|Multiplayer Exe...) |
||
Line 1: | Line 1: | ||
{{Command | {{Command | ||
| arma3 | | arma3 | ||
|1.26 | |1.26 | ||
|gr1= Arrays | |gr1= Arrays | ||
| Insert an element to the back of the given array. This command modifies the original array. (see also: [[pushBackUnique]]) | | Insert an element to the back of the given array. This command modifies the original array. (see also: [[pushBackUnique]]) | ||
| array '''pushBack''' element | | array '''pushBack''' element | ||
|p1= array: [[Array]] | |p1= array: [[Array]] | ||
|p2= element: [[Anything]] | |p2= element: [[Anything]] | ||
| [[Number]] - index of inserted element | | [[Number]] - index of inserted element | ||
|x1= <code>_arr = [1,2,3]; | |x1= <code>_arr = [1,2,3]; | ||
_arr [[pushBack]] 4; | _arr [[pushBack]] 4; | ||
[[hint]] [[str]] _arr; //[1,2,3,4]</code> | [[hint]] [[str]] _arr; //[1,2,3,4]</code> | ||
|x2= <code>_arr = [1,[2,4],3]; | |x2= <code>_arr = [1,[2,4],3]; | ||
(_arr [[select]] 1) [[pushBack]] [5,6]; | (_arr [[select]] 1) [[pushBack]] [5,6]; | ||
[[hint]] [[str]] _arr //[1,[2,4,[5,6]],3]</code> | [[hint]] [[str]] _arr //[1,[2,4,[5,6]],3]</code> | ||
| [[pushBackUnique]], [[select]], [[set]], [[resize]], [[reverse]], [[count]], [[find]], [[in]], [[forEach]], [[deleteAt]], [[deleteRange]], [[append]], [[sort]], [[arrayIntersect]], [[apply]], [[BIS_fnc_arrayPushStack]], [[BIS_fnc_arrayPush]] | | [[pushBackUnique]], [[select]], [[set]], [[resize]], [[reverse]], [[count]], [[find]], [[in]], [[forEach]], [[deleteAt]], [[deleteRange]], [[append]], [[sort]], [[arrayIntersect]], [[apply]], [[BIS_fnc_arrayPushStack]], [[BIS_fnc_arrayPush]] | ||
}} | }} |
Revision as of 01:26, 18 January 2021
Description
- Description:
- Insert an element to the back of the given array. This command modifies the original array. (see also: pushBackUnique)
- Groups:
- Arrays
Syntax
- Syntax:
- array pushBack element
- Parameters:
- array: Array
- element: Anything
- Return Value:
- Number - index of inserted element
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
Notes
- 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;
Bottom Section
- 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;