MDN’s new design is in Beta! A sneak peek:

The Gamepad.index property of the Gamepad interface returns an integer that is auto-incremented to be unique for each device currently connected to the system.

This can be used to distinguish multiple controllers; a gamepad that is disconnected and reconnected will retain the same index.


readonly    attribute long                index;


window.addEventListener("gamepadconnected", function() {
  var gp = navigator.getGamepads()[0];
  gamepadInfo.innerHTML = "Gamepad connected at index " + gp.index + ": " + + ".";


An integer.


Specification Status Comment
The definition of 'Gamepad.index' in that specification.
Working Draft Initial definition

Browser compatibility

Feature Chrome Edge Firefox (Gecko) Internet Explorer Opera Safari (WebKit)
General support 21.0 webkit
(Yes) 29.0 (29.0) No support 15.0 webkit
No support
Feature Android Edge Firefox Mobile (Gecko) IE Phone Opera Mobile Safari Mobile
General support No support (Yes) 32.0 (32.0) No support No support No support

See also

Using the Gamepad API

Document Tags and Contributors

 Contributors to this page: erikadoyle, Sebastianz, fscholz, teoli, chrisdavidmills
 Last updated by: erikadoyle,