Array

Visit the: code | unit tests | issues)

{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


{{after array 1}}

{arrayify}

Cast the given value to an array.

Params

  • value any
  • returns Array

Example

{{arrayify "foo"}}

{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


{{before array 2}}

{eachIndex}

Params

  • array Array
  • options Object
  • returns String

Example


{{#eachIndex array}}
  {{item}} is {{index}}
{{/eachIndex}}

{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


{{#filter array "foo"}}AAA{{else}}BBB{{/filter}}

{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

{{first "['a', 'b', 'c', 'd', 'e']" 2}}

{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



{{#forEach accounts}}
  <a href="mailto:{{ email }}" title="Send an email to {{ name }}">
	{{ name }}
  a>{{#unless isLast}}, {{/unless}}
{{/forEach}}

{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


{{#inArray array "d"}}
  foo
{{else}}
  bar
{{/inArray}}

{isArray}

Returns true if value is an es5 array.

Params

  • value any: The value to test.
  • returns Boolean

Example

{{isArray "abc"}}



{{isArray array}}

{itemAt}

Returns the item from array at index idx.

Params

  • array Array
  • idx Number
  • returns any value

Example


{{itemAt array 1}}

{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


{{join array}}


{{join array '-'}}

{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



{{last value}}


{{last value 2}}


{{last value 3}}

{length}

Returns the length of the given string or array.

Params

  • value Array|Object|String
  • returns Number: The length of the value.

Example

{{length '["a", "b", "c"]'}}



{{length myArray}}



{{length myObject}}

{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


{{map array double}}

{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

// {{pluck items "data.title"}}

{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


{{reverse value}}


{{reverse value}}

{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


{{#some array isString}}
  Render me if the array has a string.
{{else}}
  Render me if it doesn't.
{{/some}}

{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


{{sort array}}

{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


{{sortBy array "a"}}

{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


{{#withAfter array 3}}
  {{this}}
{{/withAfter}}

{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


{{#withBefore array 3}}
  {{this}}
{{/withBefore}}

{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


{{#withFirst array}}
  {{this}}
{{/withFirst}}

{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


{{#withGroup array 4}}
  {{#each this}}
	{{.}}
  {{each}}
  <br>
{{/withGroup}}



{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


{{#withLast array}}
  {{this}}
{{/withLast}}

{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


{{#withSort array}}{{this}}{{/withSort}}

{unique}

Block helper that return an array with all duplicate values removed. Best used along with a each helper.

Params

  • array Array
  • options Object
  • returns Array

Example


{{#each (unique array)}}{{.}}{{/each}}