MDN wants to talk to developers like you:

This is an experimental technology
Because this technology's specification has not stabilized, check the compatibility table for usage in various browsers. Also note that the syntax and behavior of an experimental technology is subject to change in future versions of browsers as the specification changes.

The ImageData() constructor returns a newly instantiated ImageData object build from the typed array given and having the specified width and height.

This constructor is the preferred way of creating such an object in a worker.


var imageData = new ImageData(array, width, height);
var imageData = new ImageData(width, height);


array Optional
A Uint8ClampedArray containing the underlying pixel representation of the image. If no such array is given, an image with a black rectangle of the given dimension will be created.
An unsigned long representing the width of the represented image.
An unsigned long representing the height of the represented image. This value is optional if an array is given: it will be inferred from its size and the given width.


var imageData = new ImageData(100, 100); // Creates a 100x100 black rectangle
// ImageData { width: 100, height: 100, data: Uint8ClampedArray[40000] }


Specification Status Comment
WHATWG HTML Living Standard
The definition of 'ImageData()' in that specification.
Living Standard Initial definition.

Browser compatibility

Feature Chrome Edge Firefox (Gecko) Internet Explorer Opera Safari
Basic support 42 (Yes) 29.0 (29.0) No support 29 ?
Feature Android Webview Chrome for Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Basic support No support 42 29.0 (29.0) No support 29 ?

See also


Document Tags and Contributors

 Contributors to this page: jpmedley, zbjornson, DevelX, fscholz, teoli
 Last updated by: jpmedley,