JavaScript is a high level interpreted language.

Data types

The latest ECMAScript standard defines eight data types.


All types except objects define immutable values.

Boolean Logical entity having a true or false value
Number Double-precision 64-bit binary format IEEE 754 value
BigInt Represent integers with arbitrary precision and beyond the safe integer limit
String Set of unsigned 16-bit integer values used for textual representations
Symbol Unique value used as the key of an Object property
Null null value
Undefined undefined value


In computer science, an object is a value in memory which is possibly referenced by an identifier.


In JavaScript, objects can be seen as a collection of properties. Properties are identified using key values. A key value is either a String value or a Symbol value. Property values can be values of any type which enables building complex data structures.

“Normal” objects, and functions

A JavaScript object is a mapping between keys and values. Keys are strings or Symbols, and values can be anything.

Functions are regular objects with the additional capability of being callable.

Indexed collections

  • Array

Keyed collections

  • Map
  • Set
  • WeakMap
  • WeakSet

Structured data

  • JSON


Expand js drafts.