Array Operators
When we need to work with lists, these operators will help with your markdown.
List of Operators
{{ after }}
{{ arrayify }}
{{ before }}
{{ eachIndex }}
{{ filter }}
{{ first }}
{{ forEach }}
{{ inArray }}
{{ intersect }}
{{ isArray }}
{{ itemAt }}
{{ join }}
{{ equalsLength }}
{{ last }}
{{ length }}
{{ lengthEqual }}
{{ map }}
{{ pluck }}
{{ reverse }}
{{ some }}
{{ sort }}
{{ sortBy }}
{{ withAfter }}
{{ withBefore }}
{{ withFirst }}
{{ withGroup }}
{{ withLast }}
{{ withSort }}
{{ unique }}
{{ after }}
Returns all of the items in an array after the specified index. Opposite of before.
Params
* `array` **{Array}**: Collection
* `n` **{Number}**: Starting index (number of items to exclude)
* `returns` **{Array}**: Array exluding `n` items.
Example
{{ arrayify }}
Cast the given value
to an array.
Params
* `value` **{any}**
* `returns` **{Array}**
Example
{{ before }}
Return all of the items in the collection before the specified count. Opposite of after.
Params
* `array` **{Array}**
* `n` **{Number}**
* `returns` **{Array}**: Array excluding items after the given number.
Example
{{ eachIndex }}
Params
* `array` **{Array}**
* `options` **{Object}**
* `returns` **{String}**
Example
{{ filter }}
Block helper that filters the given array and renders the block for values that evaluate to true
, otherwise the inverse block is returned.
Params
* `array` **{Array}**
* `value` **{any}**
* `options` **{Object}**
* `returns` **{String}**
Example
{{ first }}
Returns the first item, or first n
items of an array.
Params
* `array` **{Array}**
* `n` **{Number}**: Number of items to return, starting at `0`.
* `returns` **{Array}**
Example
{{ forEach }}
Iterates over each item in an array and exposes the current item in the array as context to the inner block. In addition to the current array item, the helper exposes the following variables to the inner block:
index
total
isFirst
isLast
Also,@index
is exposed as a private variable, and additional private variables may be defined as hash arguments.
Params
* `array` **{Array}**
* `returns` **{String}**
Example
{{ inArray }}
Block helper that renders the block if an array has the given value
. Optionally specify an inverse block to render when the array does not have the given value.
Params
* `array` **{Array}**
* `value` **{any}**
* `options` **{Object}**
* `returns` **{String}**
Example
{{ intersect }}
Returns an array of unique values that are included in all given arrays.
Params
* `array` **{Array}**: The arrays to inspect
* `returns` **{Array}**
Example
To return a unique array of SKU names that are titled Monthly Rate or Subscription.
{{ isArray }}
Returns true if value
is an es5 array.
Params
* `value` **{any}**: The value to test.
* `returns` **{Boolean}**
Example
{{ itemAt }}
Returns the item from array
at index idx
.
Params
* `array` **{Array}**
* `idx` **{Number}**
* `returns` **{any}** `value`
Example
{{ join }}
Join all elements of array into a string, optionally using a given separator.
Params
* `array` **{Array}**
* `separator` **{String}**: The separator to use. Defaults to `,`.
* `returns` **{String}**
Example
{{ equalsLength }}
Returns true if the the length of the given value
is equal
to the given length
. Can be used as a block or inline helper.
Params
* `value` **{Array|String}**
* `length` **{Number}**
* `options` **{Object}**
* `returns` **{String}**
{{ last }}
Returns the last item, or last n
items of an array or string. Opposite of first.
Params
* `value` **{Array|String}**: Array or string.
* `n` **{Number}**: Number of items to return from the end of the array.
* `returns` **{Array}**
Example
{{ length }}
Returns the length of the given string or array.
Params
* `value` **{Array|Object|String}**
* `returns` **{Number}**: The length of the value.
Example
{{ lengthEqual }}
Alias for equalsLength
{{ map }}
Returns a new array, created by calling function
on each element of the given array
. For example,
Params
* `array` **{Array}**
* `fn` **{Function}**
* `returns` **{String}**
Example
{{ pluck }}
Map over the given object or array or objects and create an array of values from the given prop
. Dot-notation may be used (as a string) to get nested properties.
Params
* `collection` **{Array|Object}**
* `prop` **{Function}**
* `returns` **{String}**
Example
{{ reverse }}
Reverse the elements in an array, or the characters in a string.
Params
* `value` **{Array|String}**
* `returns` **{Array|String}**: Returns the reversed string or array.
Example
{{ some }}
Block helper that returns the block if the callback returns true for some value in the given array.
Params
* `array` **{Array}**
* `iter` **{Function}**: Iteratee
* **{Options}**: Handlebars provided options object
* `returns` **{String}**
Example
{{ sort }}
Sort the given array
. If an array of objects is passed, you may optionally pass a key
to sort on as the second argument. You may alternatively pass a sorting function as the second argument.
Params
* `array` **{Array}**: the array to sort.
* `key` **{String|Function}**: The object key to sort by, or sorting function.
Example
{{ sortBy }}
Sort an array
. If an array of objects is passed, you may optionally pass a key
to sort on as the second argument. You may alternatively pass a sorting function as the second argument.
Params
* `array` **{Array}**: the array to sort.
* `props` **{String|Function}**: One or more properties to sort by, or sorting functions to use.
Example
{{ withAfter }}
Use the items in the array after the specified index as context inside a block. Opposite of withBefore.
Params
* `array` **{Array}**
* `idx` **{Number}**
* `options` **{Object}**
* `returns` **{Array}**
Example
{{ withBefore }}
Use the items in the array before the specified index as context inside a block. Opposite of withAfter.
Params
* `array` **{Array}**
* `idx` **{Number}**
* `options` **{Object}**
* `returns` **{Array}**
Example
{{ withFirst }}
Use the first item in a collection inside a handlebars block expression. Opposite of withLast.
Params
* `array` **{Array}**
* `idx` **{Number}**
* `options` **{Object}**
* `returns` **{String}**
Example
{{ withGroup }}
Block helper that groups array elements by given group size
.
Params
* `array` **{Array}**: The array to iterate over
* `size` **{Number}**: The desired length of each array "group"
* `options` **{Object}**: Handlebars options
* `returns` **{String}**
Example
{{ withLast }}
Use the last item or n
items in an array as context inside a block. Opposite of withFirst.
Params
* `array` **{Array}**
* `idx` **{Number}**: The starting index.
* `options` **{Object}**
* `returns` **{String}**
Example
{{ withSort }}
Block helper that sorts a collection and exposes the sorted collection as context inside the block.
Params
* `array` **{Array}**
* `prop` **{String}**
* `options` **{Object}**: Specify `reverse="true"` to reverse the array.
* `returns` **{String}**
Example
{{ unique }}
Block helper that return an array with all duplicate values removed. Best used along with an #each
helper.
Params
* `array` **{Array}**
* `options` **{Object}**
* `returns` **{Array}**
Example