pushBack: Difference between revisions
Jump to navigation
Jump to search
Killzone Kid (talk | contribs) (since we passed stable release and it causes some confusion, lets make it more obvious, it returns NUMBER) |
No edit summary |
||
Line 57: | Line 57: | ||
<dd class="note"> | <dd class="note"> | ||
It's highly recommended to use the new [[pushBack]] command, up to 43% faster than [[set]] and up to '''11843%''' faster [[a plus b]]! | It's highly recommended to use the new [[pushBack]] command, up to 43% faster than [[set]] and up to '''11843%''' faster [[a plus b]]! | ||
</dd> | |||
</dl> | |||
<!-- DISCONTINUE Notes --> | |||
<!-- CONTINUE Notes --> | |||
<dl class="command_description"> | |||
<dd class="notedate">Posted on November 26, 2014 - 18:25 (UTC)</dd> | |||
<dt class="note">[[User:DreadedEntity|DreadedEntity]]</dt> | |||
<dd class="note"> | |||
[[pushBack]] does not support [[nil]] while [[set]] and [[a plus b]] do. For example: | |||
<code>_array = []; | |||
[[for]] "_i" [[from]] 0 [[to]] 3 [[do]] | |||
{ | |||
_array [[pushBack]] [[nil]]; | |||
}; | |||
[[hint]] [[str]] _array; //[[hint]] is []</code> | |||
<code>_array = []; | |||
[[for]] "_i" [[from]] 0 [[to]] 3 [[do]] | |||
{ | |||
_array [[set]] [_i, [[nil]]]; | |||
}; | |||
[[hint]] [[str]] _array; //[[hint]] is [any,any,any,any]</code> | |||
<code>_array = []; | |||
[[for]] "_i" [[from]] 0 [[to]] 3 [[do]] | |||
{ | |||
_array = _array + [ [[nil]] ]; | |||
}; | |||
[[hint]] [[str]] _array; //[[hint]] is [any,any,any,any]</code> | |||
That could be a problem if you're trying to standardize array length by filling empty elements with nil values. Use [[set]] for it's speed over [[a plus b]]. | |||
</dd> | </dd> | ||
</dl> | </dl> | ||
<!-- DISCONTINUE Notes --> | <!-- DISCONTINUE Notes --> |
Revision as of 19:25, 26 November 2014
Description
- Description:
- Insert an element to the back of the given array. This command modifies the original array.
- Groups:
- Uncategorised
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]; _arr //[1,[2,4,[5,6]],3]
Additional Information
- See also:
- setresizereversecountfindinforEachdeleteAtdeleteRangeBIS_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 []
_array = []; for "_i" from 0 to 3 do { _array set [_i, nil]; }; hint str _array; //hint is [any,any,any,any]
_array = []; for "_i" from 0 to 3 do { _array = _array + [ nil ]; }; hint str _array; //hint is [any,any,any,any]
That could be a problem if you're trying to standardize array length by filling empty elements with nil values. Use set for it's speed over a plus b.