Indexing


Some data types take an index that is not an integer.
For example, [object map](object-maps.md) indices are [strings](strings-chars.md).

Some data types, such as arrays, can be indexed via a Rust-like syntax:

object [ index ]

object [ index ] = value ;

Usually, a runtime error is raised if the index value is out of bounds or does not exist for the object’s data type.

Elvis Notation

The Elvis notation is similar except that it returns () if the object itself is ().

// returns () if object is ()
object ?[ index ]

// no action if object is ()
object ?[ index ] = value ;