Tutorials References Exercises Bootcamps Videos Menu
Sign Up Create Website Get Certified Upgrade

JS Reference

JS by Category JS by Alphabet


JS Array JS Boolean JS Classes JS Date JS Error JS Global JS JSON JS Math JS Number JS Object JS Operators JS Precedence JS RegExp JS Statements JS String JS TypedArray


Window Object Window Console Window History Window Location Window Navigator Window Screen


HTML Documents HTML Elements HTML Attributes HTML Collection HTML NodeList HTML DOMTokenList HTML Styles
alignContent alignItems alignSelf animation animationDelay animationDirection animationDuration animationFillMode animationIterationCount animationName animationTimingFunction animationPlayState background backgroundAttachment backgroundClip backgroundColor backgroundImage backgroundOrigin backgroundPosition backgroundRepeat backgroundSize backfaceVisibility border borderBottom borderBottomColor borderBottomLeftRadius borderBottomRightRadius borderBottomStyle borderBottomWidth borderCollapse borderColor borderImage borderImageOutset borderImageRepeat borderImageSlice borderImageSource borderImageWidth borderLeft borderLeftColor borderLeftStyle borderLeftWidth borderRadius borderRight borderRightColor borderRightStyle borderRightWidth borderSpacing borderStyle borderTop borderTopColor borderTopLeftRadius borderTopRightRadius borderTopStyle borderTopWidth borderWidth bottom boxShadow boxSizing captionSide caretColor clear clip color columnCount columnFill columnGap columnRule columnRuleColor columnRuleStyle columnRuleWidth columns columnSpan columnWidth counterIncrement counterReset cssFloat cursor direction display emptyCells filter flex flexBasis flexDirection flexFlow flexGrow flexShrink flexWrap font fontFamily fontSize fontStyle fontVariant fontWeight fontSizeAdjust height isolation justifyContent left letterSpacing lineHeight listStyle listStyleImage listStylePosition listStyleType margin marginBottom marginLeft marginRight marginTop maxHeight maxWidth minHeight minWidth objectFit objectPosition opacity order orphans outline outlineColor outlineOffset outlineStyle outlineWidth overflow overflowX overflowY padding paddingBottom paddingLeft paddingRight paddingTop pageBreakAfter pageBreakBefore pageBreakInside perspective perspectiveOrigin position quotes resize right scrollBehavior tableLayout tabSize textAlign textAlignLast textDecoration textDecorationColor textDecorationLine textDecorationStyle textIndent textOverflow textShadow textTransform top transform transformOrigin transformStyle transition transitionProperty transitionDuration transitionTimingFunction transitionDelay unicodeBidi userSelect verticalAlign visibility width wordBreak wordSpacing wordWrap widows zIndex

HTML Events

HTML Events HTML Event Objects HTML Event Properties HTML Event Methods

Web APIs

API Canvas API Console API Fetch API Fullscreen API Geolocation API History API MediaQueryList API Storage API Validation API Web

HTML Objects

<a> <abbr> <address> <area> <article> <aside> <audio> <b> <base> <bdo> <blockquote> <body> <br> <button> <canvas> <caption> <cite> <code> <col> <colgroup> <datalist> <dd> <del> <details> <dfn> <dialog> <div> <dl> <dt> <em> <embed> <fieldset> <figcaption> <figure> <footer> <form> <head> <header> <h1> - <h6> <hr> <html> <i> <iframe> <img> <ins> <input> button <input> checkbox <input> color <input> date <input> datetime <input> datetime-local <input> email <input> file <input> hidden <input> image <input> month <input> number <input> password <input> radio <input> range <input> reset <input> search <input> submit <input> text <input> time <input> url <input> week <kbd> <label> <legend> <li> <link> <map> <mark> <menu> <menuitem> <meta> <meter> <nav> <object> <ol> <optgroup> <option> <output> <p> <param> <pre> <progress> <q> <s> <samp> <script> <section> <select> <small> <source> <span> <strong> <style> <sub> <summary> <sup> <table> <tbody> <td> <tfoot> <th> <thead> <tr> <textarea> <time> <title> <track> <u> <ul> <var> <video>

Other References

CSSStyleDeclaration JS Conversion

JavaScript Typed Array Reference


const myArr = new Int8Array(10);
Try it Yourself »

JavaScript Typed Arrays

In Javascript, a typed array is an array-like buffer of binary data.

There is no JavaScript property or object named TypedArray, but properties and methods can be used with typed array objects:

Typed Array Objects

Object Data Type Range Try it
Int8Array Signed integer (byte) -128/127 Try it »
Uint8Array Unsigned integer (octet) 0/255 Try it »
Uint8ClampedArray Unsigned integer (octet) 0/255 Try it »
Int16Array Short integer -32768/32767 Try it »
Uint16Array Unsigned short integer 0/65535 Try it »
Int32Array Signed long integer -231/231-1 Try it »
Uint32Array Unsigned long integer 0/232 Try it »
Float32Array Float - 7 significant digits 1.2x10-38/3.4x1038 Try it »
Float64Array Double - 16 significant digits 5.0x10-324/1.8x10308 Try it »
BigInt64Array Big signed integer -263/263-1 Try it »
BigUint64Array Big unsigned integer 0/264 Try it »


Typed arrays are not arrays.

isArray() on a typed array returns false.

Many array methods (like push and pop) are not supported by typed arrays.

Typed arrays are array-like objects for storing binary data in memory.

Typed Array Methods and Properties

Method / Property Description Try it
BYTES_PER_ELEMENT Property to count the number of bytes used to store one element Try it »
fill() Fill all elements with a value Try it »
find() Returns the first element that satisfies a condition Try it »
name Returns the name of the typed array Try it »
of() Method to create a typed array from an array Try it »
some() Reurns true if one element satisfies a condition Try it »

Uint8Array vs Uint8ClampedArray

The difference between an Uint8Array and an Uint8ClampedArray is how values are added.

If you set one element in an Uint8ClampedArray to a value outside the 0-255 range, it will default to 0 or 255.

A typed array will just take the first 8 bits of the value.

Typed Array Benefits

Typed arrays provide a way to handle binary data as efficiently as arrays work in C.

Typed arrays are raw memory, so JavaScript can pass them directly to any function without converting the data to another representation.

Typed arrays are serously faster than normal arrays, for passing data to functions that can use raw binary data (Computer Games, WebGL, Canvas, File APIs, Media APIs).

Browser APIs Supporting Typed Arrays

Fetch API Example

.then(request => request.arrayBuffer())
.then(arrayBuffer =>...);

Canvas Example

const canvas = document.getElementById('my_canvas');
const context = canvas.getContext('2d');
const imageData = context.getImageData(0, 0, canvas.width, canvas.height);
const uint8ClampedArray = imageData.data;

Browser Support

typedArray is an ECMAScript6 (ES6) feature.

ES6 (JavaScript 2015) is supported in all modern browsers:

Chrome Edge Firefox Safari Opera
Yes Yes Yes Yes Yes

typedArray is not supported in Internet Explorer 11 (or earlier).