gleam/javascript/array

Types

A JavaScript array, in Gleam!

Unlike most data structures in Gleam this one is mutable.

pub type Array(element)

Functions

pub fn fold(
  over over: Array(a),
  from from: b,
  with with: fn(b, a) -> b,
) -> b

Reduces a list of elements into a single value by calling a given function on each element, going from left to right.

fold(from_list([1, 2, 3]), 0, add) is the equivalent of add(add(add(0, 1), 2), 3).

Runs in linear time.

pub fn fold_right(
  over over: Array(a),
  from from: b,
  with with: fn(b, a) -> b,
) -> b

Reduces a list of elements into a single value by calling a given function on each element, going from right to left.

fold_right(from_list([1, 2, 3]), 0, add) is the equivalent of add(add(add(0, 3), 2), 1).

Runs in linear time.

pub fn from_list(a: List(a)) -> Array(a)

Convert a Gleam list to a JavaScript array.

Runs in linear time.

pub fn get(a: Array(a), b: Int) -> Result(a, Nil)

Get the element at the given index.

Examples

> get(from_list([2, 4, 6]), 1)
Ok(4)
> get(from_list([2, 4, 6]), 4)
Error(Nil)
pub fn map(a: Array(a), with with: fn(a) -> b) -> Array(b)

Returns a new array containing only the elements of the first array after the function has been applied to each one.

Runs in linear time.

Examples

> map(from_list([2, 4, 6]), fn(x) { x * 2 })
from_list([4, 8, 12])
pub fn size(a: Array(a)) -> Int

Get the number of elements in the array.

Runs in constant time.

pub fn to_list(items: Array(a)) -> List(a)

Convert a JavaScript array to a Gleam list.

Runs in linear time.

Search Document